Durch Einfügen geeigneter printf
-Anweisungen kannst du dir ausgeben lassen, welchen Wert eine bestimmte Variable nach einer bestimmen Zeile hat.
Beispiel.
#include <stdio.h>
#define ABS(A) (((A) > 0) ? (A) : -(A))
#define SIGN(A) (((A) > 0) ? 1 : (((A) < 0) ? -1 : 0))
#define GLOBALI 6
int main() {
int i, j, k;
double x, y, z;
i = GLOBALI;
i = i>>2 ;
j = -(i<<3);
j /= 3.9;
printf("%d\n",j); // Gibt den aktuellen Wert von j aus
k = SIGN(j);
k++;
k *= ABS(i) ;
if(k) x = 2.1;
else x = -2.1;
y = (int)x;
z = 3*((int)(x/3))-1 ;
if (x++ > 0) return -1;
y += 1.5;
z -= 1.4;
return 0;
}
Natürlich könntest du auch einen Debugger verwenden anstatt dieses sogenannte Caveman-Debugging.