📅  最后修改于: 2023-12-03 14:59:36.423000             🧑  作者: Mango
在编写C/C++程序时,常常会出现各种各样的错误。这些错误可能是语法错误、逻辑错误或者是运行时错误。本文将介绍C/C++中一些常见的错误。
语法错误是指程序中违反语法规则的错误。例如,缺少分号、括号不匹配等。
#include <iostream>
int main()
{
std::cout << "Hello, world!" << std::endl;
// 缺少分号
std::cout << "This is a syntax error"
return 0;
}
main.cpp: In function ‘int main()’:
main.cpp:7:5: error: expected ‘;’ before ‘return’
return 0;
^
遵循C/C++语法规则。
逻辑错误是指程序在逻辑上出现错误,例如错误的算法或者错误的判断等。
#include <iostream>
int main()
{
int a,b;
a = 10;
b = 0;
// 除以0
std::cout << a / b << std::endl;
return 0;
}
main.cpp: In function ‘int main()’:
main.cpp:8:20: error: / by zero
std::cout << a / b << std::endl;
~^~ ~~~
正确地设计程序逻辑,如在除数为0时进行特殊处理。
运行时错误是指程序在执行过程中发生的错误,例如数组越界、空指针等。
#include <iostream>
int main()
{
int a[10];
// 数组越界
std::cout << a[10] << std::endl;
return 0;
}
main.cpp: In function ‘int main()’:
main.cpp:7:19: warning: array subscript is above array bounds [-Warray-bounds]
std::cout << a[10] << std::endl;
~~^~~
正确地使用数组,并进行边界检查。
以上是C/C++中一些常见的错误。在编写程序时,务必要仔细检查自己的代码,及时修正错误。