读书人

很诡异的有关问题一段很普通的代码

发布时间: 2013-04-20 19:43:01 作者: rapoo

很诡异的问题,一段很普通的代码,为什么用gcc编译不过去

#include <stdio.h>

#define WEEKNUM 7

int main(void)
{
int temp;
int week[WEEKNUM] = {1,2,3,4,5,6,7};

printf("Please input today is: ");
scanf("%d",&temp);
if(temp <= WEEKNUM)
{
printf("Tomorrow is :%d\n",week[temp]);

}
else
{
printf("Error \n");
}
return 0;
}

在第一个printf()下断点,然后就弹出ld.exe的反汇编窗口,错误信息
--------------------配置: mingw5 - CUI Debug, 编译器类型: MinGW--------------------

检查文件依赖性...
正在连接...
D:\PROGRA~1\C-FREE~1\mingw\bin\ld.exe: cannot open output file C:\cygwin\home\Administrator\a2-4.exe: Permission denied
collect2: ld returned 1 exit status
[Error] D:\PROGRA~1\C-FREE~1\mingw\bin\ld.exe: cannot open output file C:\cygwin\home\Administrator\a2-4.exe: Permission denied
[Error] collect2: ld returned 1 exit status

构建中止 a2-4: 2 个错误, 0 个警告


[解决办法]
我用的是vs2012,可以编译通过的。
[解决办法]
编译正常,运行也正常,莫非你的编译器没安装好?
[解决办法]
Permission denied
没有权限

改个目录试试
[解决办法]
你C:\cygwin\home\Administrator\a2-4.exe 还在运行中。编译器没有办法写入该文件。所以报错。

[解决办法]
引用:
引用:重启编译器或者电脑试试。代码有点问题
C/C++ code?12//if(temp <= WEEKNUM)if(0 <= temp && temp < WEEKNUM)
是的,代码是有点问题,我只是照着书重新敲了一下,没有改代码,没想到会编译不过去,重启了编译器,还是这个情况
……

mingw好像有时候这样,忘了怎么解决的咯。http://codepad.org/可以直接在网页上测试小代码。

读书人网 >C语言

热点推荐