我有类似的东西(没有间距问题),我正在读取文件,字符串之间用#
符号分开,并试图将它们中的每一个读入char *
的数组中。但是,每个包含字符串的char*
很多都是字符串的确切长度。虽然这是一个小错误。C:将字符串文件读入字符数组*
char * fragments[1000];
char temp[20];
while (i < numFrags) {
if (fscanf(fp, "#%15[^#]#", temp) == 1) {
char entry[strlen(temp)];
entry = strcpy(entry, temp);
fragments[i++] = entry;
printf("%d\n", strlen(temp));
}
}
想法?
“有点小车”没有用。请告诉我们这些错误实际上是什么,例如你的投入,你的期望以及你得到的结果。 – 2011-04-08 17:23:58
char *如何可以“是字符串的确切长度”?或者你的意思是每个char *都必须指向一个长度相等的字符串集合中的一个? – 2011-04-08 17:24:34
我认为“一个小小的车”是OP的隐喻:你看到的每个字符串都包含它携带的字符,就像一辆小马车或一辆红色的小马车一样。我可能是错的。 – 2011-04-08 17:28:44