Signatur von main(): warum "int argc" und nicht "unsigned int argc"?
-
Die Frage kam mir heut spontan. Warum wird "argc" immer als "int" deklariert und nicht als unsigned? schliesslich kann die Zahl ja nie negativ sein?
-
http://stackoverflow.com/questions/1773897/why-is-argc-an-int-rather-than-an-unsigned-int
Würde natürlich heute in Zeiten von size_t und weiß der Teufel was keinem mehr in den Sinn kommen.
MfG SideWinder
-
Blue-Tiger schrieb:
Die Frage kam mir heut spontan. Warum wird "argc" immer als "int" deklariert und nicht als unsigned? schliesslich kann die Zahl ja nie negativ sein?
Wer übergibt schon 2^16-1 Argumente beim Start?
Die meisten Shells dürften das auch gar nicht zulassen.
Von daher ist unsigned int sinnlos, da int völlig genügt und sowie eher an Shellgrenzen scheitert.
Außerdem muß man so weniger schreiben, da das unsigned Wort wegfällt.
Man muß das also pragmatisch sehen.