C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c – 如果程序的一部分表现出未定义的行为,它是否会影响程序的其余部分?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
假设程序员忘记初始化他的一个自动变量,并且他使用了它的值,从而调用了未定义的行为.
...
int i = 0,j;
...
printf("value of 'j': %d\n",j);
...
...
char buf[256];
fputs("Enter query:",stdout);
fgets(buf,sizeof(buf),stdin);
... //process input
... perform other tasks

程序员注意到屏幕上出现了乱码,并意识到他的程序是错误的,但它并没有崩溃,反正还在继续.

假设在此之后,程序提示用户输入并期望处理它,显示结果并执行所有独立于未初始化变量的其他任务,鼓励程序员停止使用该程序,修复错误,重新编译和运行?该计划的其余部分是否会不一致?

解决方法

一旦达到具有未定义行为的语句,则整个程序的行为是未定义的.

矛盾的是,之前运行的语句的行为也是未定义的.

大佬总结

以上是大佬教程为你收集整理的c – 如果程序的一部分表现出未定义的行为,它是否会影响程序的其余部分?全部内容,希望文章能够帮你解决c – 如果程序的一部分表现出未定义的行为,它是否会影响程序的其余部分?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。