0
我想知道如何我可以設置一個結構的字符串值與文件中的標記行。基本上我正在閱讀像"Person 100 100"
(由\t
分隔),我需要設置結構的字符串值返回什麼。使用strcpy更新結構中的char []字段。指針問題在C
錯誤消息:
||In function 'main':|
|32|warning: passing argument 1 of 'strcpy' from incompatible pointer type|
c:\program files (x86)\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.4.1\..\..\..\..\include\string.h|45|note: expected 'char *' but argument is of type 'char **'|
||=== Build finished: 0 errors, 1 warnings ===|
代碼片段:
char buffer[20];
fgets(buffer, 20, file);
while (*buffer != EOF)
{
struct student temp;
char *result = NULL;
//set name
strcpy(temp.name,strtok(buffer,"\t"));
//set midterm
result = strtok(NULL, "\t");
temp.midterm = atoi(result);
//set final
result = strtok(NULL, "\t");
temp.final = atoi(result);
}
它告訴你到底是什麼錯誤 - 你正在傳遞一個'char **',其中'char *'是期望的。 'struct student'的定義是什麼? –
另外,EOF不能像那樣工作。 –
''buffer'總是看着相同的位置(它和'buffer [0]'一樣。「 –