码迷,mamicode.com
首页 > 其他好文 > 详细

字符串

时间:2018-08-10 23:02:30      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:存储副本   pre   mil   开始   缓冲   getchar   +=   字符串   lin   

字符串最多的就是读取和不读取空格的问题,弄清楚两种方法,够做题就行了。

#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string>
#include<string.h>
using namespace std;
int main()
{
    ///用char数组
    char str1[15];
    char str2[15];
    scanf("%s",str1);///遇到空格、回车等会结束获取输入的字符串,后面的字符串会过滤掉(存放在输入流中)。
                        ///如果后面还需要输入字符串,则会从前面存放的字符串开始获取。
    getchar();      ///吸收空白字符
    gets(str2);     ///可以输入空格,回车结束

    for(int i=0;i<strlen(str1);i++)///输出需要截取到字符长度,不然会输出一些乱七八糟的东西
                                    ///strlen获取长度需要头文件<string.h>
        printf("%c",str1[i]);        ///单个字符输出
        printf("\n");

    printf("%s\n",str2);              ///字符串输出
    
    ///string型,需要头文件<string>
    string str3;  
    string str4;

    cin>>str3; ///cin输入,遇到空格和回车结束,跳过空格,空格还留在缓冲区
    getchar();///可以读取空白字符,没有赋值给变量,就释放了
    getline(cin,str4);///可以输入空格

    cout<<str3<<endl;
    printf("%s\n",str4.c_str());///printf输出需要调用函数

    ///复制,存储副本
    str3 = str4;///string型可以直接复制,直接添加字符或者字符串,但是不能用 += 这个符号
    str3 = str3+"abc";
    str3 = str3+a;
    cout<<str3<<endl;

    return 0;
}

 

字符串

标签:存储副本   pre   mil   开始   缓冲   getchar   +=   字符串   lin   

原文地址:https://www.cnblogs.com/shoulinniao/p/9457360.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!