Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在C编程中扫描文件并将内容存储在数组中_C_Arrays_File - Fatal编程技术网

在C编程中扫描文件并将内容存储在数组中

在C编程中扫描文件并将内容存储在数组中,c,arrays,file,C,Arrays,File,我有一个包含以下内容的文件: S3 83 S74 2984 S8 12 ... and so on for x # of values 第一个值告诉您要存储哪个空间,第二个数字告诉您内容 例如: 我想读取文件并将“83”存储在数组的空间3中。 然后将“2984”存储在数组的空间74中。然后在数组的空间8中输入“12” 如何读取文件并忽略前面的“S”,并将其与内容一起存储在数组中的该空间中 谢谢。我从这里得到了两个解决方案: 1-fscanf(): 因为你可以做到以下几点 fscanf(fp,

我有一个包含以下内容的文件:

S3 83
S74 2984
S8 12
... and so on for x # of values
第一个值告诉您要存储哪个空间,第二个数字告诉您内容

例如:

我想读取文件并将“83”存储在数组的空间3中。 然后将“2984”存储在数组的空间74中。然后在数组的空间8中输入“12”

如何读取文件并忽略前面的“S”,并将其与内容一起存储在数组中的该空间中


谢谢。

我从这里得到了两个解决方案:

1-
fscanf()
因为你可以做到以下几点

fscanf(fp, "S%d %d",&slot, &val);
如果这样做,它将跳过'S',并获取值

2-
fgetc()

只需使用
fgetc()
抛出文件,每次找到'S'时,忽略它并在它之后开始提取数据

我喜欢第一种解决方案 ,我建议阅读有关
fscanf()
fgetc()


请参阅:您可能应该使用POSIX或POSIX读取行,然后使用进行处理。跳过
S
是微不足道的;使用
scanf()
等工具要求它和数字之间没有空格会更难。使用、读取和。我们说的是什么样的阵列?Int、float、char?OP需要一些关于“字符串”、甚至数字字符串、“12”和整数(如12)之间差异的指导。我不清楚OP是否要转换为整数。我也是,但信息有限,我想我的回答可能对他有帮助,否则如果他向我们提供更多信息。我也很乐意编辑我的答案。是的,12是一个整数。我认为这个答案适合你的问题,如果你觉得有用的话,你可以标记它。