0
点赞
收藏
分享

微信扫一扫

C++字符串分割和C语言常用格式控制


C++string的输出格式控制

输出一个字符串:左对齐,字宽为10,空格填充





1. string s;  
2. cin>>s;  
3. cout<<std::left<<setw(10)<<setfill('*')<<s<<endl;

输入:love


输出效果:love******



C++string字符流字符分割技巧

输入一行字符串,然后按某个字符分割成若干子串




1. string s;  
2. getline(cin,s);//输入一行字符串  
3. stringstream line(s);//创建字符流对象  
4. while(getline(line,s,','))//按逗号分隔字符串  
5.     cout<<s<<endl;


输入:you are,my friend

输出效果:


you are
my friend

其实还有一种写法,注意getline是以回车作为个串的结束符,就像c语言里gets(s);

当对象cin输入文件结束时(end-of-file)返回值为0 !!

这里是把结束符修改为逗号,回车符失去原来的作用



1. string s;  
2. while(getline(cin,s,','))//按逗号分隔字符串  
3.     cout<<s<<endl;

效果同上一种方法

C语言输入输出技巧:

输入示例:

输入三个变量a,b,c。要求跨过b(此技巧实用性不大)

scanf("%d%*d%d",&a,&c);

执行这句话的效果是,从键盘输入三个数字,第二个数字会被忽略,剩余两个数字分别赋给a,c

输出:

左对齐输出一个字符串,要求宽度为m。

int m=10;
    char s[100]="skajd";
    printf("%-*s",m,s);

效果:星号吸收m的值作为%s的宽度,符号代表左对齐。


举报

相关推荐

0 条评论