zoukankan      html  css  js  c++  java
  • 【转】fscanf 跳过空格,读取一行

    fscanf(fp, "%s", sLineWord);

    以上语句,在读取一行数据时,如何遇到该行数据有空格,那么读到空格处就停止,不再继续向下读。 

    若想遇到空格继续读取,读取完整的一行数据,则用如下语句:

    fscanf(fp, "%[^ ]%*c", sLineWord);

    fscanf用于读取字符串数据流,遇到空白字符(空格' '; 制表符' '; 新行符' ')就停止,若要读取完整的一行数据,可以使用格式控制("%[^ ]%*c"),或者使用行读取函数(getline)。

    格式控制说明:%[ ]表示读取指定字符集的文本,例如%[0-9]表示仅读取数字,遇到非数字字符就停止;%[a-zA-Z]表示读取字符,遇到非字母字符就停止)。第一个字符是'^',表示反向读取,读取指定字符集以外的文本,遇到指定字符集就停止。*表示忽略读取的字符,就是说读取指定的字符但不保存到变量中。
    %[^ ]表示读取' '之外的所有字符;之后的%*c表示忽略读取的' ',就是说读取' '但不保存。
    %*[^ ]%*c表示跳过一行。
  • 相关阅读:
    CSU-ACM2020寒假集训比赛2
    js动画(一)
    响应式基本知识
    移动web基本知识
    premere cs4绿色版 安装 并且 视频导出 讲解
    样式重置
    html5图片标签与属性
    我眼中的科研
    Chrome浏览器上无法使用西瓜影音???
    双系统引导菜单设置
  • 原文地址:https://www.cnblogs.com/haiyang21/p/7234780.html
Copyright © 2011-2022 走看看