首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >F不读第一个单词的第一个字符(在c中)

F不读第一个单词的第一个字符(在c中)
EN

Stack Overflow用户
提问于 2015-10-19 09:03:57
回答 4查看 1.6K关注 0票数 1

我在c代码中使用fscanf函数读取一个文件包含一行由空格分隔的单词,但是例如,如果第一个单词是1234,那么当我打印它时输出是234,但是文件中的其他单词被正确读取,有什么想法吗?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
FILE* file = fopen(path, "r");

char arr = getc(file);

char temp[20];  

while(fscanf(file,"%s",temp)!= EOF && i<= column)
{
 printf("word %d: %s\n",i, temp);
}
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-10-19 09:31:32

这是贴出的代码和我的评论

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
When asking a question about a run time problem, 
post code that cleanly compiles, and demonstrates the problem

FILE* file = fopen(path, "r");
// missing check of `file` to assure the fopen() was successful

char arr = getc(file);
// this consumed the first byte of the file, (answers your question)

char temp[20];  

while(fscanf(file,"%s",temp)!= EOF && i<= column)
// missing length modifier. format should be: "%19s"
// 19 because fscanf() automatically appends a NUL byte to the input
// 19 because otherwise the input buffer could be overrun,
//    resulting in undefined behaviour and possible seg fault event
// should be checking (also) for returned value == 1 
// this will fail as soon as an `white space` is encountered
// as the following call to fscanf() will not read/consume the white space
// suggest a leading space in the format string to consume white space
{
    printf("word %d: %s\n",i, temp);
    // the variable 'i' is neither declared nor modified
    //    within the scope of the posted code
}
票数 1
EN

Stack Overflow用户

发布于 2015-10-19 09:05:57

char arr = getc(file);

可能是线上引起了第一个字符的松动。

票数 3
EN

Stack Overflow用户

发布于 2015-10-19 09:06:08

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
char arr = getc(file);

从文件流中读取第一个字符并迭代文件流文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33220038

复制
相关文章
python dropwhile跳过开头的几行
from itertools import dropwhile with open('/etc/passwd') as f: ... for line in dropwhile(lambda line: line.startswith('#'), f): ... print(line, end='') from itertools import islice items = ['a', 'b', 'c', 1, 4, 10, 15] for x in
用户5760343
2019/09/30
1.7K0
pythoncharm注释快捷键_多行注释以什么开头
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/174489.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/27
1.6K0
pythoncharm注释快捷键_多行注释以什么开头
为什么浏览器的用户代理字符串以 Mozilla 开头?
为什么浏览器的用户代理字符串(user-agent string)以 Mozilla 开头? 最早流行的浏览器是 NCSA Mosaic,它称自己为 NCSA_Mosaic/2.0 (Windows
前端教程
2018/03/29
1.4K0
为什么浏览器的用户代理字符串以 Mozilla 开头?
在文件每一行开头增加字符串
首先,使用vim 打开某txt文件,输入冒号,并输入%s/^/,之后输入要添加的字符串即可
DoubleV
2022/03/25
1.1K0
python字符串匹配开头_对python 匹配字符串开头和结尾的方法详解
1、你需要通过指定的文本模式去检查字符串的开头或者结尾,比如文件名后缀,URL Scheme 等等。检 查 字 符 串 开 头 或 结 尾 的 一 个 简 单 方 法 是 使 用str.startswith() 或 者 是str.endswith()方法。比如:
全栈程序员站长
2022/09/13
2.8K0
原理分析:使用 dd 跳过开头若干字节快速拷贝文件
  计算机中每一次向硬盘读取和写入数据,无论读多小的数据量,都至少需要花一段常数时间(称为overhead)。 (就像你去超市买鸡蛋一样,无论你一次只买一个,还是一千个,你都至少要花从家走到超市,再从超市走回家的时间。)
Miigon
2022/10/27
1.2K0
ES6字符串模板多行清除行头空格制表符
对于多行文本我肯定优先考虑用 ES6字符串模板来实现,直接使用的效果并不是很符合想要的。
CRPER
2019/11/29
1K0
php用空格分隔字符串,分割字符串空格[通俗易懂]
String[] data = s.split(“@”); // 以@分割字符串,获得@后的值。
全栈程序员站长
2022/11/16
6.3K0
Java 多行字符串
在本文中,我们来说说 Java 的多行字符串(multiline strings )。
HoneyMoose
2022/08/08
4.2K0
Java 多行字符串
python 字符串开头结尾匹配
filename = 'spam.txt' filename.endswith('.txt') True filename.startswith('file:') False url = 'http://www.python.org' url.startswith('http:') True 或者正则 import re url = 'http://www.python.org' re.match('http:|https:|ftp:', url) <_sre.SRE_Mat
用户5760343
2022/01/10
1.7K0
php删除字符串的空格
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/105882.html原文链接:https://javaforall.cn
全栈程序员站长
2022/08/09
3.6K0
字符串:替换空格
示例 1: 输入:s = "We are happy." 输出:"We%20are%20happy."
代码随想录
2020/09/10
4.6K0
字符串:替换空格
带空格的字符串反转
就是输入一段文本,然后让你实现字符串反转。 肺炎严重,假期延长,闲的不得不自主学习,然后就日常刷水题。 第一次的方法,简单易懂,就是时间超限了。TLIM #include<bits/stdc++.h> using namespace std; stack<string> st; int main(){ string s; cin>>s; reverse(s.begin(),s.end()); st.push(s); while(getchar() != '\n'){ cin>>s; re
杨鹏伟
2020/09/11
1.3K0
JS去除字符串的空格
JS去除字符串前后空格 //去前后空格 //var LO = data.replace(/(^\s*)|(\s*$)/g, ""); //var LA = data.replace(/(^\s*)|(\s*$)/g, ""); JS去除字符串所有空格 //直接去除所有的空格 var LL = data.replace(/\s+/g,""); 在Kettle做数据清洗中用到的: //Script here //去前后空格 //var LO = LONGITUDE.replace(/(^\s*)|(\s*
手撕代码八百里
2020/07/28
8K0
python 匹配字符串开头和结尾
1.你需要通过指定的文本模式去检查字符串的开头或者结尾,比如文件名后缀,URL Scheme 等等。检 查 字 符 串 开 头 或 结 尾 的 一 个 简 单 方 法 是 使 用str.startswith() 或 者 是str.endswith()方法。比如:
全栈程序员站长
2022/09/16
1.3K0
算法-字符串替换空格
chaibubble
2018/01/02
2.4K0
算法-字符串替换空格
android空格字符串_v1d空格复制
&#160; == &nbsp; == &#xA0; == no-break space (普通的英文半角空格但不换行)
全栈程序员站长
2022/09/30
8240
关于字符串切割空格
注意: 不要在split方法中写" ", 这样只能匹配到一个空格 String s = "hello world you"; String[] split = s.split("\\s+"); for (String s1 : split) { System.out.println(s1); }
乐心湖
2020/07/31
1.1K0
python 字符串去空格
1、lstrip:删除左边的空格 这个字符串方法,会删除字符串s开始位置前的空格。
全栈程序员站长
2022/09/03
2.6K0
Python字符串开头或末尾匹配
当你需要通过指定的文本模式去检查字符串的开头或者结尾的时候,比如文件名后缀,URL Scheme等等。
后场技术
2020/09/03
1.8K0

相似问题

在多行开头添加空格

443

sscanf跳过开头的空格

10

匹配以空格开头的多行

12

删除多行字符串变量中每一行开头的空格。

55

字符串开头的跳过模式

22
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文