为您找到"

C语言问题 int *p,*q,m=5; p=&m;q=p; 请问指针q=p是什

"相关结果约100,000,000个

c语言中amp;是什么符号?代表什么?

按位与运算符“”是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位都为1时,结果位才为1。参与运算的两个数均以补码出现。整数在计算机中用二进制的位来表示,例如:310可写算式如下: 0000001100001010 00000010 十进制2。其他位运算符:1、按位或运算符“|”是双目...

C语言 若有程序段int **p, *q[5]; p=q; ,则以下不正确的叙述是...

p=q就是将二级指针p指向指针数组q的首地址,即*p指向的地址就是q[0]所指向的地址。所以p指向q[0]正确(即A正确)p+3就是q[3]的地址跟A类似,只是偏移了三个内存单元(即B正确)(p+3)与*q[3]等价都是指向q[3]所指向的内存地址单元,值都是一样的(即C正确)对于D,由于定义了*q[5]...

int a=5, *p, *q=&a; *p=q* 哪错了?

int a=5, *p, *q=&a;这个语句定义了 a 为整型变量,p 和 q 是整型指针,a 存储了5,q存储了a的地址;p=q*这个有错,首先p没有初始化就开始用了,我们不清楚p指向了内存中哪个位置,这是非常危险的,其次,q*应该为*p,用来取a=5这个值。* 运算符作为单目运算时在变量前。

C 语言指针问题,急!

p++;} } cnt=p; //注意要记录不及格人数 return c;} void main(){ int score[3][5];char name[5][32];int *c=NULL;int i,j,*p;int cnt; //添加一个变量,记录不及格人数 for(i=0;i<5;i++){ printf("Input the name of Student %d:",i+1);scanf("%s",name[i]);...

C语言指针中的++p与++*p的区别

在q==NULL时,*p=*q非法操作,p=q是合法操作(使p和q同为NULL)。综上,除q为无效(NULL)时不能取值操作外,正常情况下*p=*q操作的是指针指向的目标,p=q操作的是指针本身——这是二者的本质区别。以下代码可以验证:#include "stdio.h"int main(int argc,char *argv[]){int *p,*q,a=3...

在定义指针的时候,写成「int* p;」和「int *p;」哪个更好?

1、在一次声明一个指针的情况下,这两种情况是看不出来有什么区别,所以两种都可 2、在一次声明多个指针的情况下,就能看出区别来:a)按照第一种方式声明多个指针:int* p, q;这种是错误的,上面的声明是一个指针p和一个整型q b)按照第二种方式声明多个指针:int *p, *q;这是正确的,声明的...

c语言中,i=*p-‘0’是什么意思

p是一个指针,*p是他所指向的内容,这里p是char 类型的指针,所以*p实际上就是一个字符,比如'a''0'在这里也是一个字符(用单引号括起来的都是一个字符char型)由于对于C语言来讲,字符是用ASCII码表示的,也就是说一个字符是一个0~255的整数,'0'的ASCII码是48,'1'的ASCII码是49。。。所...

C语言中*p,p,&p的区别

上面说过执行 int *p 之后,p是一个地址但也是一个变量。 &p是一个地址,顺着这个地址能找到一个值,这个值是p,然后p也是一个地址,顺着这个地址能找到另外一个值 p 而 p不再是一个地址,是一个变量就跟 int a=1,b=2; 里一样。 通俗一点解释找一本《C语言程序设计》的书,...

C语言问题

如果是定义为 int *(p[4]); 如果这样这样A才是对了 B:而q是一个指向整型的指针数组,用来存放二维数组中的每行地址;(有分列地址和行地址)C:类似于B的情况,只是P只是一个指针,没有B中的数组性质,也用来存放二维数组每行地址 D :这个更加明显了,a[2][1]是个具体变量,前面加上&地址...

c语言中& *的用法

区别:1.运算符性质不同。&是一个位运算符。&&是一个逻辑运算符。2.作用不同。&是将两个二进制的数逐位相与,结果是相与之后的结果。&&就是判断两个表达式的真假性,只有两个表达式同时为真才为真,有一个为假则为假,具有短路性质。3.用途限制。&除了是一个位运算符,也是取地址符。&&就是...
1 2 3 4 5 6 7 8 9

相关搜索