C语言问题 编程时我明明没有少大括号它怎么显示

来源:百度知道 编辑:UC知道 时间:2024/09/18 04:29:16
#include<stdio.h>
void main( )

{
int i=0,j,k;
do{i++;k=316-13*i;} while(k%11);
j=k/11;
printf("316=13*%d+11*%d",i,j);

}
就是这个程序,我再三检验了,没有任何错误,更没有缺少大括号,但是我一编译就出现一个错误fatal error C1004(这个错误是缺少大括号)。
但是当我关闭这个工作区间在新建一个文件,然后把刚才这个程序复制过去,一编译,居然有可以运行了。
这只是一个例子,因为之前我也碰到过好几次了这种问题了,在这个工作区间编译不能通过,显示有错,在另外一个工作区间里面却可以正常运行!
我现在很是郁闷,为什么会有这种事情发生!!!!请高手指点迷津!!!..感激不尽!
我使用的是 Visual C++ 6.0,我在不同的机器上面不同版本的Visual C++ 6.0上编译C语言程序是都曾出现过这样问题:一个没有错误的程序,编译显示有错,而且有时候后有很多。这种问题一般出现在你已经打开一个工作区间,并且在这个区间里面编写、编译了几个程序之后,也就是一个工作区间永久了以后。你只有把这个程序复制一下,然后关闭旧工作区间并打开一个新的,然后重新编译。
-------------期待着大家的答复!

我没怎么明白你说的情况,因为我是一个新手,只是也遇到过这种类似的情况,调试没错,但编译的时候就是由这样那样的错误,而且这种情况也是出现在“已经打开一个工作区间,并且在这个区间里面编写、编译了几个程序之后,”我出现这种情况的原因是,这个工程里有不止一个主函数,就是先前编的那个程序,在关闭的时候没有把主函数改掉再保存,后来只要我把它改了,就没事了,比方就你说的这个程序,#include<stdio.h>
void main( )

{
int i=0,j,k;
do{i++;k=316-13*i;} while(k%11);
j=k/11;
printf("316=13*%d+11*%d",i,j);

}

我会在确定这个程序没问题之后,将“void main( ) ”改为“void main1( ) ”然后再把这个程序关了,写下一个程序去调试编译,,,
我也不知道你是不是这个原因,如果你觉得自己有这个可能的话,就试一下吧。。。。

我用vc++编译,没有出现你所说的错误,要不重找一个例子看看
vc++6.0在编译一个新的程序时,如果你已经在编译了一个程序,那么必须把原来的关掉(把整个vc++6.0关掉),重新打开新的程序,再重新编译。

可能是你的VC编译器出现问题拉 你还是重新找张VC盘装上,我以前也有这种问题

用的什么编译器?
C++编译器main函数应该是要返回int的,返回void可能出错.

我用的也是Visual C++ 6.0,你这个代码,没有报任何错误!
你的报错,估计是你的工程里有其他文件,或者工作空间里有其他东西
或者是你的工程根本没被编译,而显示了以前编译的结果

你可以重新建一个工程,保存在其他目录下,然后编译这段代码
肯定就没有问题了

#include<stdio.h>
void main( )

{
int i=0,j,k;
do{i++;k=316-13*i;}