| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3143 人关注过本帖, 1 人收藏
标题:C++,C里如何读取一行任意长度且有空格的字符串
只看楼主 加入收藏
令狐少侠56
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:320
专家分:175
注 册:2014-4-10
结帖率:58.18%
收藏(1)
已结贴  问题点数:20 回复次数:5 
C++,C里如何读取一行任意长度且有空格的字符串
我在网上找的要么不能任意长度要么不能有空格,要任意长度也要空格怎么办?
搜索更多相关主题的帖子: 字符串 如何 网上 
2016-10-17 23:49
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9024
专家分:54030
注 册:2011-1-18
收藏
得分:5 
std::getline( 流,std::string对象的引用 );

程序代码:
#include <iostream>
#include <fstream>
#include <string>

int main( void )
{
    std::ifstream is( "a.txt" );
    for( std::string line; std::getline(is,line); )
        std::cout << line << '\n';

    return 0;
}

2016-10-18 08:40
lin_jun_cai
Rank: 2
等 级:论坛游民
帖 子:9
专家分:23
注 册:2016-5-14
收藏
得分:5 
你可以试试用sprintf()/sscanf()函数,前提是你要知道字符串的长度
2016-10-18 09:18
Panda2016
Rank: 2
等 级:论坛游民
威 望:2
帖 子:10
专家分:33
注 册:2016-6-26
收藏
得分:5 
basic_istream::getline(szBuf,iSize);

eg:
 char szBuf[1024];
 int iSize = 1024;
 std::cin.getline(szBuf,iSize):
2016-10-18 22:16
林家的姑娘
Rank: 1
等 级:新手上路
帖 子:9
专家分:5
注 册:2016-10-16
收藏
得分:5 
回复 楼主 令狐少侠56
你试试用gest读取你的字符串
2016-10-18 23:04
StadyC
Rank: 6Rank: 6
等 级:侠之大者
威 望:6
帖 子:182
专家分:430
注 册:2016-10-13
收藏
得分:0 
文件中读取整行(包括'\n'):
FILE *fp = fopen("test.txt", "r");
char buf[256];
memset(buf, '\0', sizeof(buf));
fgets(buf, 256, fp);

终端输入:
char buf[256];
memset(buf, '\0', sizeof(buf));
fgets(buf, 256, stdin);    //也可以直接gets(buf),不过该函数不安全,在C11标准已经直接被删除了


[此贴子已经被作者于2016-10-31 12:06编辑过]

2016-10-31 12:03
快速回复:C++,C里如何读取一行任意长度且有空格的字符串
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026271 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved