int p=new int;//配一个int型变量所占大小的空间,并将首地址赋给int 型指针p。 int p=new int[10];//分配一个有10个int型元素的数组所占空间,并将该数组的第一个元素的地址赋给int 型指针p。 int p=new int(10);//分配一个int型变量所占大小的空间,在其中放入十进制数10,并将首地址赋给int 型指针p。
const char *c = "lin"; //指向常量的指针变量 char *const c = "lin"; //一个指针常量 const char *const c = "lin"; //指向常量的指针常量
例题
链接:https://www.nowcoder.com/questionTerminal/ce0e989f86624204827606d617319680
假设已经有定义“ const char*name=" chen " ;”,下面的语句中错误的是()?
A. name[3]='q';
B. name="lin";
C. name=new char[3];
D. name=new char('q');
说明:name被定义指向常量的指针,所以它所指的内容不能改变,但指针本身的内容可以修改,而“ name [ 3 ]=' q';”修改了name所指的内容,是错误的。"name== "lin",name=new char[5];”和"name=new char('q') ”以不同的方法修改了常指针,都是正确的
假设定义有“char * const name ="chen";”下面语句中正确的是()。
A.name[3]='q';
B.name="lin";
C.name=new char[5]
D.name=new char('q');