我安裝了VS Express 2012以在我的大學學習C語言。我創建新的空項目,然後新的項目添加到源文件文件夾,並更改Source.cpp到由source.c在Visual Studio Express 2012中運行C代碼的問題
「Hello World」的運行沒有問題,但是當我寫簡單的「for」循環是這樣的:
#include <stdio.h>
#include <stdlib.h>
int main() {
for (int i = 0; i <= 6; i++)
{
printf("the i value is: %d\n", i);
}
getchar();
return (0);
}
它寫出了我很多的錯誤:
------ Build started: Project: cTest, Configuration: Debug Win32 ------
Source.c
e:\ctest\source.c(7): error C2143: syntax error : missing ';' before 'type'
e:\ctest\source.c(7): error C2143: syntax error : missing ')' before 'type'
e:\ctest\source.c(7): error C2065: 'i' : undeclared identifier
e:\ctest\source.c(7): warning C4552: '<=' : operator has no effect; expected operator with side-effect
e:\ctest\source.c(7): error C2059: syntax error : ')'
e:\ctest\source.c(8): error C2143: syntax error : missing ';' before '{'
e:\ctest\source.c(9): error C2065: 'i' : undeclared identifier
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
請幫我解決這個問題。
在函數的開頭聲明'i'變量。 –
@AlexFarber工程。謝謝。你能解釋爲什麼我不能在循環中聲明我的變量。 – Luchnik
@Luchnik由於在c中,你不能在任意範圍聲明局部變量,但只能在函數代碼塊的開頭。 –