ninti
Well-Known Member
Hallo!
Ich dachte mir, da hier auch übers Programmieren geredet wird und die zwei Compiler eher was für Unixer sind, deshalb dachte ich, meine Frage wäre hier am besten aufgehoben.
C-Schnipsel:
Compiler: CLANG
clang -std=c99 -Wall -Wextra -Werror -pedantic -o prog prog.c
Ausgabe:
32
0
-101
Compiler: GCC
gcc -std=c99 -Wall -Wextra -Werror -pedantic -o prog prog.c
Ausgabe:
1
0
-1
Die Frage:
Wieso ist bei clang ein anderer Rückgabewert als bei gcc???
Und was ist das nun für ein Wert? ^^
Mir ist klar:
32 = 1
0 = 0
-1 = -101
Aber kann man dann mit diesen komischen Werten was anderes machen als nur 0 oder 1 erwarten?
Anmerkung von Buch:
Es wurde mit Visual C++ Compiler kompiliert und hat das gleiche Ergebnis wie gcc.
Ich dachte mir, da hier auch übers Programmieren geredet wird und die zwei Compiler eher was für Unixer sind, deshalb dachte ich, meine Frage wäre hier am besten aufgehoben.
C-Schnipsel:
Code:
printf ("%d\n", strcmp ("abcde", "abCde"));
printf ("%d\n", strcmp ("abcde", "abcde"));
printf ("%d\n", strcmp ("abcd", "abcde"));
Compiler: CLANG
clang -std=c99 -Wall -Wextra -Werror -pedantic -o prog prog.c
Ausgabe:
32
0
-101
Compiler: GCC
gcc -std=c99 -Wall -Wextra -Werror -pedantic -o prog prog.c
Ausgabe:
1
0
-1
Die Frage:
Wieso ist bei clang ein anderer Rückgabewert als bei gcc???
Und was ist das nun für ein Wert? ^^
Mir ist klar:
32 = 1
0 = 0
-1 = -101
Aber kann man dann mit diesen komischen Werten was anderes machen als nur 0 oder 1 erwarten?
Anmerkung von Buch:
Es wurde mit Visual C++ Compiler kompiliert und hat das gleiche Ergebnis wie gcc.
