fscanf(fp,"%*[^:]:%d%*[^:]:%s",&(p->student_id),p->name)//&是啥意思?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fscanf(fp,"%*[^:]:%d%*[^:]:%s",&(p->student_id),p->name)//&是啥意思?相关的知识,希望对你有一定的参考价值。

%*[^:] 从当前位置找到第一个不等于‘:’的字符串,

我想应该是为了匹配 “student_id:101 name:xiaoming” 这样的字符串,具体可以看一下正规表达式。

例如 2012-5-1 可以这样解析fscanf("2012-5-1",“%d[^-]-%d[^-]-%d[^-]”,&nYear,&nMonth,&nDay)

:)
参考技术A p->student_id是一个int整型变量,所以前面要加上&取址符号,而p->name是字符串型,不用加&,书上应该都有的,你该看看书把基础搞好先哦追问

%*[^:]: //书上怎么解释的

追答

这个我真心不知道哦

追问

你该看看书把基础搞好先哦

追答

好的

以上是关于fscanf(fp,"%*[^:]:%d%*[^:]:%s",&(p->student_id),p->name)//&是啥意思?的主要内容,如果未能解决你的问题,请参考以下文章

c语言:fscanf(fp,"%*[^\n]")为啥可以跳过全部字符直到下一个换行符

在C/C++中,fscanf(fp,"%s",temp_str);和fscanf(fp,"%lf",&min_snr);的意思分别是啥?

在C/C++中,fscanf(fp,"%s",temp_str);和fscanf(fp,"%lf",&min_snr);的意思分别是啥?

fscanf(fp,"%*s%*s"); 啥意思?

C语言 格式读取 fscanf() 如何读取至末尾结束(txt)

C语言中fscanf()按一定的格式读取文本文件!