获取“警告:从不兼容的指针类型分配”
问题描述:
我得到fp=fopen("task.txt","r")
错误请任何人可以帮我吗?
我试图打开文件,fp(File pointer)
获取“警告:从不兼容的指针类型分配”
main()
{
int l=0,pr[100];
FILE *fp;
fp=("task.txt","r");
if(fp==NULL)
printf("No file found");
char arr[100][20];
const char *str;int i;
while(fscanf(fp,"%s",str)!=EOF)
{
strcpy(arr[l],str);
l++;
}
for(i=0;i<l;i++)
{
system(arr[i]);
}
}
答
你的代码没有这样的行。再次检查您的代码。
你没有的fopen
fp=("task.txt","r");
写写这
fp=fopen("task.txt","r");
你会得到它
答
此:
fp=("task.txt","iiiiia");
不包含fopen()
通话。这会将一个字符串文字("iiiiia"
,由于逗号分隔符将其忽略而忽略)指定给FILE *
,这显然不合理。
您应将其更改为:
fp = fopen("task.txt", "rt");
有道理。 fopen()
的第二个参数没有定义字母i
的用法,据我所知,"rt"
更符合您的文本的其余部分。
您需要适当的'#include's。 – pmg
“_我在'fp = fopen(”task.txt“,”r“)'_”得到错误 - 你的代码没有这样的行。 –
fp =(“task.txt”,“iiiiia”);错误地打印。 –