如果每行是固定格式的话可以用fscanf函数 比如TXT中一行为: aa bb cc fscanf(fp , "%s %s %s" , a , b , c);//fp为文件指针, a,b,b为char数组
scanf("%d%c",&a,&c);输入123 a a=123 c值为空格,而不是'a'
scanf中%[^\n]是接收从^字符到\n字符的所有字符,原本scanf是不接收空格的,遇到空格就当做null来处理停止接受其后边的字符,但是这样控制输入后就会接收空格了,其实也可以用gets函数来接收,gets也接收空格的
你的理解有误,所谓结束输入是指单个数据,这里输入12后空格,表示a的读入结束了,接下来开始读入24给b,输入enter后b输入结束
你可以有点想象力嘛。首先给你说,答案是不会。其次,你可以猜测下,如果会,那么scanf就可以接受空格了,但这样的话,为什么它不一开始就把那个空格接收下来呢?这样也就矛盾了。
你可以有点想象力嘛。首先给你说,答案是不会。其次,你可以猜测下,如果会,那么scanf就可以接受空格了,但这样的话,为什么它不一开始就把那个空格接收下来呢?这样也就矛盾了。