初学者,想了一天也不知道该怎么做的字符串操作有关问题
菜鸟求助,想了一天也不知道该如何做的字符串操作问题
问题是:在一个文本文件中查找用户指定的字符串,如找到,则指出位于哪些行中.
...
我在第一步就卡住了.我想把一个文本文件中的字符串,每行分别给一个数组中的元素...然后在数组元素中查找指定字符串..
但实在是不知道怎样把一个文本文件中的字符串,以回车符为断点分配给一个数组...
请教各位大虾我的想法对么..或是根本不该用这个法,给点你们的经验之谈吧,谢谢
另外,小弟初来,最近手紧只能送上5分了
------解决方案--------------------
从文本中按行读取,读出来的行字符串都是以回车为行结束的标志的。
char line[100]; // 每行最多有一百个字符
char alltext[200][100]; // 假如最多有二百行,每行最多有一百个字符
int row = 0;
while (!fgets(line, 100, fp)) {
strcpy(&alltext[row++][0], line); // 把读到的行复制到保存文本的字符数组中。
}
实际处理的时候,要动态分配数组来存储。
问题是:在一个文本文件中查找用户指定的字符串,如找到,则指出位于哪些行中.
...
我在第一步就卡住了.我想把一个文本文件中的字符串,每行分别给一个数组中的元素...然后在数组元素中查找指定字符串..
但实在是不知道怎样把一个文本文件中的字符串,以回车符为断点分配给一个数组...
请教各位大虾我的想法对么..或是根本不该用这个法,给点你们的经验之谈吧,谢谢
另外,小弟初来,最近手紧只能送上5分了
------解决方案--------------------
从文本中按行读取,读出来的行字符串都是以回车为行结束的标志的。
char line[100]; // 每行最多有一百个字符
char alltext[200][100]; // 假如最多有二百行,每行最多有一百个字符
int row = 0;
while (!fgets(line, 100, fp)) {
strcpy(&alltext[row++][0], line); // 把读到的行复制到保存文本的字符数组中。
}
实际处理的时候,要动态分配数组来存储。