對於這個問題,我是經常出錯,但每次出錯後,系統會提示哪裏錯了。只是返回去改改。也不會想着把它弄明白,現在總結一下,以免再犯(這裏總結的或許不全,以後在遇到其他的再來改吧)
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];
}
}