相同基类型的指针变量和数组变量

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/10 19:12:39
相同基类型的指针变量和数组变量
指向数组的指针和指向数组的元素的指针有何区别?数组名和指针变量名有何区别?

指向数组的指针其实是指向指针的指针,而指向数组的元素的指针只是单纯的指向数组元素的类型的指针.数组名和指针变量名有何区别?答:数组名是常指针,指针变量是变量,顾名思义常指针不能够改变其值,而变量则不同

请问:两个指针变量可以相减,如两个指针变量指向同一个数组的元素,

两个指针变量指向同一个数组的元素,则该变量的值相等.如:int*p1;int*p2;p1=&a[i];p2=&a[i];则p1-p2=0如果对p1赋值为1;对p2赋值为4;即p1=1;p2=4;则p2

若x是整型变量,pb是基本类型为整型的指针变量,则正确的赋值表达式:pb=&x和*pb=X对不对?

intx;int*pb;//将整型变量x的地址赋值给bb=&x;//*pb就相当于一个整型变量,本质下面语句是整型变量赋值//但是由于pb是指针,意思就是将pb指向的那个整型值,赋值//为另一个整型值

指针变量和指针常量的区别是什么?

指针变量:int*pi指向的对象是常量的指针constint*pi:*pi是不可以改变的,*pi=2之类的对于*pi的操作都是不可取的,但是可以改变pi指向的地址,即可以改变指针指向的地址,但是不可以

设p1和p2是指向同一个int型一维数组的指针变量,k为int型变量,则下列不能正常执行的语句是?

不能正常执行的是C.p2是一个指针型变量,k是一个整型变量,不能把一个整型变量赋给一个指针,而只能把k的地址值赋给p2,即p2=&k.

两个相同类型的指针变量能不能相加,为什么?

两个指针相加,没有意义.就好像宾馆房号一样,两个房号相加,没有意义,但房号可以加上一个整数,你住在601房间,我的房间标号比你的大5.

C语言.指针变量的类型符号一定与它所指向的变量的类型符号相同吗?

不一定,可以进行强制转换,指针变量中保存的是地址而非数值,也就是说,当你定义一个字节的变量bytea=1,然后定义一个字节的别的类型的变量bool*b;这样*b=&a,当读取b的时候,实际上是a的地址

任何类型指针指向的变量的类型相同才能进行比较,为什么任何类型的指针都可以和NULL进行比较?

#defineNULL(void*)0因为NULL是(void*)类型,而任何指针都可以(显性或隐性地)转化成(void*),这使得比较成为可能.int(*p)(int);//函数指针,可以用来指向任

指针的数据类型为什么要跟所指向的数据的类型一致,不是说所有的指针变量占用的内存大小是相同的吗?

这是C语言的语法要求,因为不同类型的指针,在作+-运算时,它的步长是不一样的.

(1) 定义变量fPtr为指向double类型的指针.(2) 把已定义变量x1(初值为5.0)的地址赋给指针变量fPtr

C++程序:#include"iostream.h"voidmain(){doublex1=5.0;doublex2;double*fPtr;//(1)fPtr=&x1;//(2)cout

对于类型相同的两个指针变量之间,不能进行的运算是符号是?

类型相同的两个指针变量不能进行加法运算,但能进行减法运算.还能用‘’、‘==’这三个运算符进行比较,主要用于判断指针指向数组元素的先后位置.

定义指针变量时必须说明其() ,以确定该指针变量所指向的变量的类型.

填“数据类型”,“数据类型”规定了指针变量所指向的数据类型

若有如下定义;int a[2]具有相同类型的指针型变量p与数组a,下列不正确的操作是 A:p=a B:p=NULL C:

D不对.&a的类型是指向int[2]的指针,即int(*)[2],不是int*,会有编译错误.

指针的类型和他指向变量的类型完全相同是什么意思,指针(变量)不是只是整型吗

指针类型是说指针只能指向的变量类型,存储指针的空间是只能4字节的整型了

指针变量与其他类型变量的区别

指针的保存的内容是变量的地址,而其它类型变量的内容是数据.如:int*a;intb;char*c;chard;a和c是指针变量.b和d是变量.a指向的变量的类型为int,c指向的变量的类型为char.

一个变量的指针就是( ) 选择一个答案 A. 变量的名称 B. 变量的地址 C. 变量的类型 D. 变量的值

答案是:B为什么是变量的地址,举例来说明:int*p(先不管p指向的空间);其中p是指针,p的指针类型是int*,int*是什么类型,就是指针类型,理解是很生涩,看后面;指向的类型是int,这个应该很