摘要:
A:区别主要是:string的内存管理是由系统处理,除非系统内存池用完,不然不会出现这种内存问题。char *的内存管理由用户自己处理,很容易出现内存不足的问题。当我们要存一个串,但是不知道其他需要多少内存时, 用string来处理就最好不过了。当你知道了存储的内存的时候,可以用char *,但是不如用string的好,用指针总会有隐患。用string还可以使用各种成员函数来处理串的每一个字符,方便处理。用char *处理串,就不如string的方便了,没有相应的函数来直接调用,而是要自己编写函数来完成串的处理,而且处理过程中用指针还很容易出现内存问题。我建议尽量使用string,不用char 阅读全文
摘要:
好久没写过c程序,都忘记了c程序中的字符串的含义。今天问过而知新,c语言字符串其实就是一个字符数组,比如char* ptr = "hello world",其实就是ptr[] = {'h','e','l','l','0',' ','w','o','r','l','d','\0'}; 声明一个字符串会自动在末尾添加一个\0 不需要人工干预。总结如下: 一个字符串必须要一个 \0 结尾 不 阅读全文