1. char * t_str ;你可以让指针指向另一个字符串,同时也可以修改指针指向字符串的值。
eg:
char * t_testStr1 = "exetime";
t_testStr1[1] = 't';//right
t_testStr1 = "etetime";//right
2. const char * t_str;你可以让指针指向另一个字符串,但不能修改指针指向字符串的值。
eg:
const char * t_testStr2 = "exetime";
t_testStr2[1] = 't';//compile error
t_testStr2 = "etetime";//compile right .重新给字符串赋值,让指针指向别的字符串
3. char * const t_str: 你不能修改指针指向的字符串,但可以修改指针指向字符串的值。
char * const t_testStr3 = "exetime";
t_testStr3[1] = 't';//compile right
t_testStr3 = "etetime";//compile error
4. const char * const t_str;你不能让指针指向别的字符串,也不可以修改指针指向字符串的值。
const char * const t_testStr3 = "exetime";
t_testStr3[1] = 't';//compile error
t_testStr3 = "etetime";//compile error
参考文献:
http://stackoverflow.com/questions/4949254/const-char-const-versus-const-char
在c++中可以用
const int 取代#define 定义的整型数据。
const char * const 取代#define 定义的字符串。