如何正确输出字符串

对于这个问题,我是经常出错,但每次出错后,系统会提示哪里错了。只是返回去改改。也不会想着把它弄明白,现在总结一下,以免再犯(这里总结的或许不全,以后在遇到其他的再来改吧)
1.

#include<iostream>
#include<cstring>
using namespace std;
int main()
{
    string str="Happy Birthday LZU!";
        cout<<str;
}

2.利用指针
字符串常量“Happy Birthday LZU!"出现在一个表达式中时,表达式使用的值就是这些字符所存储的地址,而不是这些字符本身。 所以,可以把字符串赋值给指向字符的指针str,而不能把字符串赋值给一个字符数组。(指针的值就是地址,而数组的值不是)
(1)

#include<iostream>
using namespace std;
int main()
{
    char *str="Happy Birthday LZU!";
        cout<<str;
}

(2)

#include<iostream>
using namespace std;
int main()
{
    char *str;
    str="Happy Birthday LZU!";
        cout<<str;
}

3.利用数组
需要注意:字符数组可以在定义时整体赋值,不能再赋值语句中整体赋值。

#include<iostream>
using namespace std;
int main()
{
    char str[20]="Happy Birthday LZU!";
        cout<<str;
}

以上输出结果都为:
在这里插入图片描述
4.对数组中字符逐个赋值(这个方法就比较麻烦了)

#include<iostream>
using namespace std;
int main()
{
    char str[20]={'H','a','p','p','y','B','i','r','t','h','d','a','y', 'L','Z','U','!'};
    for(int i=0;i<20;i++)
    {
        cout<<str[i];
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章