C++中字符串string的输出,很有意思

来源:互联网 发布:南开大学网络教学平台 编辑:程序博客网 时间:2024/05/21 21:37

一句话总结:区分C与C++的字符串输出机制。

C语言是碰到'\0'就结束输出,而C++是根据字符串长度输出的。

直接上例子吧

#include <iostream>  #include <string>using namespace std;    int main()  {      char szTest[] = {'a', 'b', 'c', '\0', 'd', 'e', 'f'};      string s(szTest, 7);      cout << s.c_str() << endl;      cout << s << endl;    if ('\0' == s[3])    {        cout<<"hhhhhh"<<endl;    }    if ('\0' == s[7])    {        cout<<"hkkkkk"<<endl;    }    cout<< sizeof(s) <<endl;    cout<<s.length()<<endl;    string s1("hello boy");    cout << s1 <<endl;    s1[3] = '\0';    cout << s1 <<endl;    cout<< sizeof(s) <<endl;    cout<<s1.length()<<endl;      return 0;  } 

运行结果:

abc

abcdef

hhhhhh

hkkkkk

24

7

hello boy

helo boy

24

9


原创粉丝点击