C和C ++中的未定义行为
在这里,我们将看到一些C和C++代码。并尝试猜测结果。该代码将生成一些运行时错误。
1.除零错误未定义。
范例程式码
#include <iostream>
using namespace std;
int main() {
int x = 10, y = 0;
int z = x / y;
cout << "Done" << endl;
}输出结果
Runtime error for divide by zero operation
2.尝试使用未初始化的变量。
范例程式码
#include <iostream>
using namespace std;
int main() {
bool x;
if(x == true)
cout << "true value";
else
cout << "false value";
}输出结果
false value (This may differ in different compilers)
3.尝试访问空指针值。
范例程式码
#include <iostream>
using namespace std;
int main() {
int *ptr = NULL;
cout << "The pointer value is: " << *ptr;
}输出结果
Runtime error for accessing null pointer values
4.尝试访问空指针值。
范例程式码
#include <iostream>
using namespace std;
int main() {
int array[10];
for(int i = 0; i<=10; i++) {
cout << array[i] << endl;
}
}输出结果
Runtime error for accessing item out of bound. Some compiler may return some arbitrary value, not return any error
5.超出有符号整数的限制。
范例程式码
#include <iostream>
using namespace std;
int main() {
int x = INT_MAX;
cout << "x + 1: " << x + 1;
}输出结果
x + 1: -2147483648 circulate to the minimum number of signed int
6.尝试更改String文字中的某些字符。
范例程式码
#include <iostream>
using namespace std;
int main() {
char *str = "Hello World";
str[2] = 'x';
cout << str;
}输出结果
Runtime error because we are trying to change the value of some constant variables.
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短