pt1是一个指针,为什么可以赋值为字符串
从现象看,那就是“给指针赋了一个字符串”。但,在C/C++中,字符串的指针就是指向这个字符串的第一个字符的指针,所以char *p="abc"的确切意思并不是把字符串abc赋给char *型指针p,而是“创建一个常字符串'abc',并把这个字符串第一个字符(即a)的地址赋给char *型指针p"。举一反三,写常字符串"abcdef",也代表它的指针(即指向a的指针)——下面的代码可以验证:
输出结果: