循环体也算是一个函数块吗?
自动变量仅作用和存在于自己的函数块中,在这个代码中反复实验,都没办法在循环外调用出来count2的值,开始用static放在定义count2前边,没有用(只记得说函数还是循环结束会保留它的值,所以试着用这个,但具体搜索后看不懂无果。)然后试了指针,也只有当最后那句放在循环内才会有效,否则编译错误,无法找到变量。
程序代码:
#include<stdio.h> int main(void) { int count1 =1; do { int count2 =0; ++count2; printf("\ncount1=%d \t count2=%d",count1,count2); int *p =&count2; }while (++count1<=8); printf("\ncount1=%d",count1); printf("count2=%d",*p);/*这一句没法调用*/ getchar(); return 0; }