1万
7万
12万
管理员
int main(void) { int i = 0; // 外层的 i while(1) { volatile int i = 0; // 内层的 i,遮蔽了外层变量 printf("内层 i = %d, 外层 i = %d\r\n", i++, i); // 打印: 内层 i = 0, 外层 i = 0 // 下次循环内层 i 又变回 0 } }
使用道具 举报
7
418
439
高级会员
4
465
477
2
83
89
初级会员
小梁呐 发表于 2026-3-31 09:47 哈哈哈这个应该会有警告提示的
361
2214
3302
版主
caicaptain2 发表于 2026-3-31 10:32 内层i出现后,外层的i就没有作用了。 i++和i都是内层的i。 同名的变量尽量别用,自己懵,别人更懵,只有编 ...
50
71
本版积分规则 发表回复 回帖后跳转到最后一页
|小黑屋|Archiver|手机版|硬汉嵌入式论坛
GMT+8, 2026-4-10 19:23 , Processed in 1.667714 second(s), 27 queries .
Powered by Discuz! X3.4 Licensed
Copyright © 2001-2023, Tencent Cloud.