我正在尝试创建一个函数,该函数读取包含数据的文本文件,并将其赋值给变量。但是,有些行以$开头,需要忽略它。例如:
$ Monday test results
10 12
$ Tuesday test results
4这就是我到目前为止刚打印出来的东西:
10 12
4这样做的代码是:
#include <stdio.h>
#include <stdlib.h>
void read_data(){
FILE* f;
if (f = fopen("testdata.txt", "r")) {
char line[100];
while (!feof(f)) {
fgets(line, 100, f);
if (line[0] == '$') {
continue;
} else{
puts(line);
}
}
} else {
exit(1);
}
fclose(f);
}
void main(){
read_data();
return 0;
}我试过fgetc,搜索过很多次,但还是被困住了;
**编辑添加#include和main
我要问的是如何赋值,比如a= 10,b= 12,c= 4。尝试了fgetc,但是它只会忽略实际的$签名,而不是$所在的整行。
发布于 2020-08-27 11:14:53
C string.h .h库函数- strtok()
char *strtok(char *str, const char *delim)该字符串的内容被修改并分解为较小的字符串(tokens).
此函数返回指向字符串中的第一个令牌的指针。如果没有要检索的标记,则返回空指针。
复制自:https://www.tutorialspoint.com/c_standard_library/c_function_strtok.htm
#include <string.h>
#include <stdio.h>
int main () {
char str[80] = "This is - www.tutorialspoint.com - website";
const char s[2] = "-";
char *token;
/* get the first token */
token = strtok(str, s);
/* walk through other tokens */
while( token != NULL ) {
printf( " %s\n", token );
token = strtok(NULL, s);
}
return(0);
}输出:
This is
www.tutorialspoint.com
websitehttps://stackoverflow.com/questions/63614190
复制相似问题