所以基本上我有一个从文本文件读取数据的程序。此文本文件中的每个字段都包含在单独的.c文件中声明的整数列。我正在尝试尝试读取第二个字段中的行的代码行,请检查是否有任何值与“ ICE_CREAM”匹配,这是单独的头文件中的预定义值。对于包含整数ICE_CREAM的字段2的所有行,将在字段3中将其对应的值相加。
问题是程序的这一部分不断给我一个段错误。我认为可能是因为strcmp的第二个值必须是字符串,但是由于ICE_CREAM是整数,所以我无法使用字符串。我想知道是否有一种方法可以解决此问题,或者可以使用其他方法来获得所需的计算?
头文件示例:
#define ICE_CREAM 14
。c文件:
int sum = 0; if(strcmp(second, ICE_CREAM) == 0){ sum += atoi(third); }
文本文件示例:
S 1 2 0 0 0.00 C 14 70 23 0 0.00 C 6 0 0 0 0.00 B 6 0 0 0 0.00 V 14 0 0 0 0.00 S 1 0 0 0 0.00
例如,数字14(ICE_CREAM)在第二个字段中出现两次。这意味着字段3的值70和0都将相加。
所以基本上我有一个从文本文件读取数据的程序。此文本文件中的每个字段都包含在单独的.c文件中声明的整数列。我正在与...
由于您知道second
包含整数的字符串表示形式,请先将其转换然后进行比较: