我有这样的代码:
#ifdef DEBUG
{
unsigned int i;
GLint names;
GLuint *ptr;
printf("hits = %d\n", hits);
ptr = (GLuint *) selectBuffer;
for (i = 0; i < hits; i++) { // for each hit
int j;
names = *ptr;
printf("number of names for hit = %d\n", *ptr);
ptr++;
printf(" z1 is %g;", (float) *ptr / 0xffffffff);
ptr++;
printf(" z2 is %g\n", (float) *ptr / 0xffffffff);
ptr++;
printf(" the name is ");
for (j = 0; j < names; j++) { // For each name.
printf("%d ", *ptr);
ptr++;
}
printf("\n");
}
}
#endif
我不明白这些代码是写在哪里的。它在头文件中吗?因为我在main()
函数中只有这些代码,但此代码中的语句printf()
没有被打印,这意味着它正在其他地方打印。此外,如果我尝试从中删除这部分main()
,程序将不会执行。