1. 前几天在VS中写C语言中,总是出现一个错误(好久没写C语言了.....)
int getPosition(MGraph G, char ch)
{
<span style="color:#ff0000;">for(int i = 0; i < G.vertexNum; i++)</span>
{
if(G.vertexs[i] == ch)
return i;
}
return -1;
}
红色的那一行总是提示出错!错误提示就是:
syntax error : missing ';' before 'type'
2. 后来查了一下StackOverflow,原因大概如下:
在VS中编译c程序,在一个大括号括起的范围内,如果变量声明放在了调用的后面,那么编译的时候就会报错;
这个问题在VS编译c++程序,或者gcc编译c程序的时候都不会出现,仅仅在VS编译c程序的时候才会出现.
必须写成
int getPosition(MGraph G, char ch)
{
int i;
for(i = 0; i < G.vertexNum; i++)
{
if(G.vertexs[i] == ch)
return i;
}
return -1;
}或者把文件名改为cpp也行....
本文解决了一个在Visual Studio中使用C语言时遇到的语法错误问题,该错误出现在大括号内的变量声明位置不当。通过调整代码结构,问题得以解决。此外,文章还提供了将文件类型更改为cpp作为另一种解决方案。
7311

被折叠的 条评论
为什么被折叠?



