[英]My program doesn't compilem, can anyone help me where should I fix
我正在嘗試讀取數組中的 csv 文件。 並且還從 c 程序更改 csv 文件的值。
我嘗試使用 struct 來存儲變量。 編譯程序時, strtok
出現錯誤, strcpy
顯示不安全 function。
這是在另一個 function 中打印時的錯誤
錯誤 C2371 'printValues':重新定義; 不同的基本類型
我的代碼:
typedef struct key_value
{
char name[100];
int price;
int zaiko;
}dict;
...
dict values[999];
int i = 0;
while (fgets(buff, 1024, fp))
{
field_count = 0;
row_count++;
if (row_count == 1)
continue;
char* field = strtok(buff, ",");
while (field)
{
if (field_count == 0)
strcpy(values[i].name, field);
if (field_count == 1)
strcpy(values[i].price, field);
if (field_count == 2)
strcpy(values[i].zaiko, field);
field = strtok(NULL, ",");
field_count++;
}
i++;
}
fclose(fp);
printValues(values);
return 0;
}
void printValues(dict values[])
{
for (int i = 0; i < 999; i++)
{
printf("Name--->%s, price---->%d, zaiko---->%d\n",
values[i].name, values[i].price, values[i].zaiko);
}
}
printValues
在聲明之前使用。
你可以:
printValues
放在您調用它的 function之前。void printValues(dict values[]);
在你使用它之前。前向聲明示例:
void printValues(dict values[]); // forward declaration
...
void SomeFunction()
{
...
printValues(values);
...
}
void printValues(dict values[])
{
for (int i = 0; i < 999; i++)
{
printf("Name--->%s, price---->%d, zaiko---->%d\n",
values[i].name, values[i].price, values[i].zaiko);
}
}
假設您使用的是 Visual Studio:
為了擺脫“不安全功能”錯誤:將其放在代碼的最頂部:
#define _CRT_SECURE_NO_WARNINGS
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.