为啥c语言程序是对的可以运行,可是目标文件找不到?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥c语言程序是对的可以运行,可是目标文件找不到?相关的知识,希望对你有一定的参考价值。
void test(char ID[])
int i=0,a,b,c,correctanswer,score=0,t;
int useranswer[NUM],correctanswer1[NUM],a1[NUM],b1[NUM];
char sign,sign1[NUM];
srand(time(NULL));
FILE*outFile;
clock_t start,end;
start=clock()/CLOCKS_PER_SEC;
while(i<10)
a=rand()%100;
b=rand()%100;
c=rand()%4;
switch(c)
case 0:
if(a+b<100)
correctanswer=a+b; sign='+';
printf("%d %d%c%d= ",i+1,a,sign,b);
scanf("%d",&useranswer[i]);
a1[i]=a;b1[i]=b;sign1[i]=sign;correctanswer1[i]=correctanswer;
if(useranswer[i]==correctanswer1[i])
score=score+10;
i=i+1;
break;
case 1:
if(a-b>0)
correctanswer=a-b; sign='-';
printf("%d %d%c%d= ",i+1,a,sign,b);
scanf("%d",&useranswer[i]);
a1[i]=a;b1[i]=b;sign1[i]=sign;correctanswer1[i]=correctanswer;
if(useranswer[i]==correctanswer1[i])
score=score+10;
i=i+1;
break;
case 2:
if(a*b<100)
correctanswer=a*b; sign='*';
printf("%d %d%c%d= ",i+1,a,sign,b);
scanf("%d",&useranswer[i]);
a1[i]=a;b1[i]=b;sign1[i]=sign;correctanswer1[i]=correctanswer;
if(useranswer[i]==correctanswer1[i])
score=score+10;
i=i+1;
break;
case 3:
if(b!=0&&a%b==0)
correctanswer=a/b; sign='/';
printf("%d %d%c%d= ",i+1,a,sign,b);
scanf("%d",&useranswer[i]);
a1[i]=a;b1[i]=b;sign1[i]=sign;correctanswer1[i]=correctanswer;
if(useranswer[i]==correctanswer1[i])
score=score+10;
i=i+1;
break;
end=clock()/CLOCKS_PER_SEC;
printf("Your score is %d\n\n",score);
printf("The time you've costed is %d second.\n\n",end-start);
printf("prob | correctanwser |Ur answer\n");
for(i=0;i<10;i++)
printf("%-2d %-2d%c%-2d | %-7d | %-14d \n",i+1,a1[i],sign1[i],b1[i],correctanswer1[i],useranswer[i]);
outFile=fopen("record.txt","r");
fprintf(outFile,"Your previous scores are:\n");
fprintf(outFile,"%s %d %dseconds",ID,score,end-start);
fclose(outFile);
特别特别急!!!!!!求助!!!!!!
编译过了之后,连接器是根据函数名称进行连接,和申明关系不大,所以,连接器也能找到正确的函数进行连接。
但你这个程序,应该会生成一些warning,提示部分函数没有申明。 参考技术A outFile=fopen("record.txt","a+"); 试试追问
有了有了!!为什么呀?
追答r是只读 你文件没有 它不会创建,你要是用r必须是文件存在 r是read的意思,没有当然没法读,你也没做错误处理,所以也没报错,a+是追加,没有会自己创建
追问好的好的!太感谢啦!!
本回答被提问者采纳 参考技术B 源代码文件可以用任意文本编辑.目标文件由编译器生成.具体的生成方法在不同的开发环境上是不同的.
gcc的例子:
gcc
-o
target_file
test.c
编译test.c生成可执行文件target_file
gcc
-c
test.c
编译test.c
,生成目标文件test.o,但不进行link.
为啥好多东西运行不了。出现“找不到所需的.dll文件?”
为什么好多东西运行不了。出现“找不到所需的.dll文件-dsound.dll”?
Windows Media Player
Media Player Classic
劲舞团
一点击全都出现这个。。可是开机音乐却还有!~
....我安装了``可现在又改了...变为"找不到所需的.Dll文件-DDRAW.DLL了"
还有就是"无法启动文件 DSOUND.ALL.请检查该文件,确定出问题的原因."
晕了啊....我什么都不懂啊。...T.T
放到系统的system32文件夹下面就可以了
dsound.dll
http://www.dll-files.com/dllindex/dll-files.shtml?dsound
是个英文网站 上去后点
Click here to go to the download of dsound.dll
之后点
Download dsound.dll
下载一个*.zip文件把dsound.dll释放到
c:\\windows\\system32\\ 下面 就OK! 参考技术A 从新安装DirectX最新版好像是9.0c
http://dl.pconline.com.cn/html/1/5/dlid=15&dltypeid=1&pn=0&linkPage=1.html 参考技术B 清空所有临时文件
位置:系统盘/Documents and Settings/用户名(默认安装为admin...)/Local Settings(这是个隐含文件,设置显示所有文件,包括受到系统保护的操作系统文件的勾去掉)/temp(系统临时文件夹,里面全部清空)
旁边的Temporary Internet Files(ie临时文件夹,一样清空) 参考技术C 可能是有些系统文件丢失造成的,不妨把系统修复一下
以上是关于为啥c语言程序是对的可以运行,可是目标文件找不到?的主要内容,如果未能解决你的问题,请参考以下文章
为啥我的简单目标 c 桥接头找不到文件“BraintreeCore.h”?
为啥我的简单目标 c 桥接头找不到文件“BraintreeCore.h”?