Có cờ nào trong GCC (như -Wempty-body
trong tiếng kêu vang), điều đó có thể giúp tôi phát hiện dấu chấm phẩy sau dấu ngoặc trong khi/cho vòng lặp không? Đôi khi rất khó để con người tìm ra những sai lầm đơn giản này.Phát hiện dấu chấm phẩy sau vòng lặp/nếu ngoặc vuông
int i = 0;
for (i = 0; i < 10; ++i);
{
cout << i << endl;
}
Tôi sử dụng GCC 4.7.3 và clang 3.2-1 ~ exp9ubuntu1.
Đã chỉnh sửa: Tôi cũng kiểm tra xem trình biên dịch có thể giúp tôi tìm thấy những lỗi này sau "báo cáo if-else" hay không.
if (i == 0)
{
cout << i << endl;
}
else;
{
cout << i << endl;
}
gì là gcc thú vị là hữu ích hơn kêu vang (với cờ này (-Wall -pedantic -Wempty-body
) bằng cách cảnh báo in:
main.cpp:30:9: warning: suggest braces around empty body in an ‘else’ statement [-Wempty-body]
thể trùng lặp của [Có thể gcc chính xác bắt điều kiện vô dụng?] (http://stackoverflow.com/questions/851162/can-gcc-accurately-catch-useless-conditionals) –
Trên suy nghĩ thứ hai, đó không phải là một bản sao, xin lỗi. Tuy nhiên, không phải là '-Wempty-body' cũng là một lá cờ GCC? –
Điều này dường như với tôi một lý do rất tốt (tức là khác với phong cách) để bắt đầu '{' trên cùng một dòng với 'if' /' for'/'while' vv Và để có một lớp lót trên cùng một dòng cũng. – Kninnug