int oder size_t


  • Mod

    nachfrage schrieb:

    also sollte man, wenn man libs programmiert, und eine integervariable braucht, grundsätzlich mit "size_t" arbeiten?

    😕 Wie kommst du da drauf?

    Du nimmst was richtig ist. Richtig ist, was du brauchst. Wenn du an einer Stelle eine vorzeichenbehaftete Ganzzahl brauchst, dann ist int ein richtiger Typ. An der Stelle kann unmöglich ein Typ zum Zählen von Speichermenge der richtige sein, denn das passt nicht zum Konzept einer vorzeichenbehafteten Ganzzahl.

    Und umgekehrt.



  • SeppJ schrieb:

    Wenn du an einer Stelle eine vorzeichenbehaftete Ganzzahl brauchst, dann ist int ein richtiger Typ. An der Stelle kann unmöglich ein Typ zum Zählen von Speichermenge der richtige sein, denn das passt nicht zum Konzept einer vorzeichenbehafteten Ganzzahl.

    Dem stimme ich vollumfänglich zu.

    SeppJ schrieb:

    Und umgekehrt.

    Dem nicht. Ein vorzeichenbehafteter Typ kann durchaus nichtnegative Zahlen abbilden.
    Und int ist dabei noch "primus inter pares".

    nachfrage schrieb:

    also sollte man, wenn man libs programmiert, und eine integervariable braucht, grundsätzlich mit "size_t" arbeiten?

    Kann man den Thread wirklich so verstehen? Das war nie gemeint.


  • Mod

    Furble Wurble schrieb:

    SeppJ schrieb:

    Und umgekehrt.

    Dem nicht. Ein vorzeichenbehafteter Typ kann durchaus nichtnegative Zahlen abbilden.

    Schon. Aber als Ersatz für size_t passt int nun wirklich schlecht. Vor allem ist er möglicherweise zu klein. Und man bekommt eventuell Probleme mit signed/unsigned-Vergleichen, wenn man den int mit einem size_t-Rückgabewert einer Funktion der Standardbibliothek vergleicht.

    nachfrage schrieb:

    also sollte man, wenn man libs programmiert, und eine integervariable braucht, grundsätzlich mit "size_t" arbeiten?

    Kann man den Thread wirklich so verstehen? Das war nie gemeint.

    Ich vermute mal, dass es sich um eine absichtliche Fehlinterpretation (aka Troll) handelt. Für den Fall, dass das nicht so ist, habe ich oben schon eine ernsthafte Antwort gegeben.



  • ein problem wäre da... schrieb:

    ergo: wenn das ganze irgendwie etwas plattformübergreifend sein soll und du eine lib programmierst, dann solltest du vielleicht size_t verwenden.

    Ne, er hats gesagt.


Anmelden zum Antworten