<h3>字符串的两种储存方式</h3> <ul> <ul> <li> <h4>C风格字符串</h4> </li> </ul> </ul> <blockquote> <p>        C风格字符串具有一种特殊的性质:以空字符结尾,空字符被写作\0,其ASCII码为0,用来标记字符串的结尾,如下面两个声明:</p> </blockquote> <ul> <ul> <ul> <li>char dog[4] = {‘b’, ‘e’, ‘a’, ‘u’} 这个不是以\0结尾 所以这只是一个char数组不是字符串</li> <li>char dog[4] = {‘b’, ‘e’,‘a’, ‘\0’} 这个是字符串</li> </ul> </ul> </ul> <blockquote> <p>       字符串可以直接这样初始化</p> <p>          char dog[4] = “bea”   \0会自动加上</p> <p>          char dog[] =  “bea”</p> </blockquote> <blockquote> <p>      字符串常量不能与字符常量互换 字符常量如 ‘s’表示的是ASCII码83 而字符串常量“S” 表示的是S和\0两个字符 而“S”实际储存的却是字符串所在的内存地址</p> </blockquote> <ul> <ul> <li> <h4>string类库</h4> </li> </ul> </ul> <blockquote> <h4>         ISO/ANSI C++98标准通过添加string类扩展C++库,可以使用string类型变量来存储字符串</h4> <p>          using namespace std;</p> <p>            string str = “pandecs”;</p> </blockquote> <blockquote> <p>            string str1 ={“pandecs”}</p></blockquote>
转载于:https://my.oschina.net/u/2297730/blog/366365