指针常量,数组名是指针常量
指针常量,数组名是指针常量详细介绍
本文目录一览:指针常量,NULL指针,指针的指针,&p,*p,&(*p),*(&p),这些怎么区分,怎么...
1、比如 int * const p=&a 这时 p=&b 是错的(因为p是常量) 但*p =20是可以的 NULL指针,就是指针不指向任何东西。
2、指针常量是指针所指向的位置不能改变,即指针本身是一个常量。但是指针常量可以通过间接引用修改内存中的数据。
3、用来表示空指针。在C中,变量可以是任何值 但一个非法的指针值,会导致访问出错,程序崩溃,或者出现不可预知后果。所以 需要一个值,标记这个指针是非法的 NULL的值为0,在计算机中,是不可能访问0地址的。
4、指针,是C语言中的一个重要概念及其特点,也是掌握C语言比较困难的部分。
5、所以指针常量是:一个常量值,即确定的不会发生变化的值。指针这个形容词怎么理解呢?说明这个常量对应的是一个指针的值。举个例子就像你的出生地址,这可以理解为一个指针常量。
指针变量和指针常量有什么区别?
1、就和变量和常量的区别是一样的 指针变量 这个指针可以改变值 指针常量 指针本身是不能改变的。比如 int a[10];//定义一个数组 int *p=a;这个是指针变量。
2、p为指针变量,p值可以改变,即p可以指向不同地址。char a[10];char * const p=a;p为指针常量,p值不可改变,即p只能指向声明时初始化的地址。若声明时未初始化也不能赋值。
3、事实上,它有可能指向任何地方),在这里这个“p”,就是指针变量。而我们用指针p的时候,如果要给他赋值,比如:p=这里的意思是将a的地址赋值给p,指针p指向了a的地址,所以 这时候p就成了指针常量。
c语言中指针常量和常量指针分别是什么意思
1、所以指针常量是:一个常量值,即确定的不会发生变化的值。指针这个形容词怎么理解呢?说明这个常量对应的是一个指针的值。举个例子就像你的出生地址,这可以理解为一个指针常量。
2、前者是变量,后者是常量,指针变量很显然这个指针指向的存储单元存储的数据是可以变化的和指针常量指向的数据是程序运行前定义的一个不会变化的量,在程序运行过程中, 这个量既不能改变大小,也不能改变类型。
3、常量指针,是指针指向的是常量, *p不可改变。const char *p;或者char const *p;指针常量, 是指针本身是常量, p不可改变。
谁可以解释一下指针变量和指针常量,总是弄混
1、在定义指针变量的时候,我们这样写:“int p”,这里定义了一个指针,没有具体让他指向某个具体地址(事实上,它有可能指向任何地方),在这里这个“p”,就是指针变量。
2、指针变量 这个指针可以改变值 指针常量 指针本身是不能改变的。比如 int a[10];//定义一个数组 int *p=a;这个是指针变量。
3、char *p;p为指针变量,p值可以改变,即p可以指向不同地址。char a[10];char * const p=a;p为指针常量,p值不可改变,即p只能指向声明时初始化的地址。若声明时未初始化也不能赋值。
常量指针和指针常量有什么区别
常量是形容词,指针是名词,以指针为中心的一个偏正结构短语。这样看,常量指针本质是指针,常量修饰它,表示这个指针乃是一个指向常量的指针(变量)。指针指向的对象是常量,那么这个对象不能被更改。
常量指针 是指向常量的指针。表示指针本身值可以改,但指向值不可以改。即p的值可以变,但是*p不能变 形式是 const TYPE *p; 或者 TYPE const *p;指针常量 是说指针本身是常量。 也就是p不可以改,但是*p是可以改的。
和常量指针相反,可以改变值但是不可改变指向地址。
所以指针常量是:一个常量值,即确定的不会发生变化的值。指针这个形容词怎么理解呢?说明这个常量对应的是一个指针的值。举个例子就像你的出生地址,这可以理解为一个指针常量。
常量指针,就算指针的地址不变。但是指针里面的内容是可以变的。类比:我那条红色、尼龙的绳子,可以拴马,也可以捆柴。
指针常量是指--指针本身是常量。它指向的地址是不可改变的,但地址里的内容可以通过指针改变。它指向的地址将伴其一生,直到生命周期结束。有一点需要注意的是,指针常量在定义时必须同时赋初值。