www.1862.net > C语言 求高手指教 指针 选择题

C语言 求高手指教 指针 选择题

按C选项:在函数swap中 swap(int *p, int *q) { int *t; t=p; p=q; q=t;} p指向a,q指向b t=p; p=q; q=t; //三句的结果交换p与q的值 结果p指向b,q指向a,但a和b本身的值没有改变 如用指针可以这样改 swap(int *p, int *q) { int t; t=*p; *p=*q...

void swap(int *px, int *py) { int tmp; tmp = *px; *px = *py; *py = tmp; } pt是指针,但是你没分配内存给他,不能取值的

第一个问题我不知道你说的字面值指针常量是什么 第二个其实是这样的 在你定义了一个整型变量并赋初值以后在程序的编译过程中就会把你所定义的变量名转化为该变量的地址,而你所赋的初值则是在该地址内存里存放的数据,因为编译器是通过一个地址...

函数是可以返回结构体的。方法如下:(其它类似) 以前以为函数的返回值只能是基本类型,但是今天被高手指出,函数的返回值可以是结构体的,特此编写了如下的测试程序:让大家见笑了。 #include typedef struct { int a; int b; int c; }str; st...

请你打印时使用下面的语句: printf("%x\n%x\n%x\n%x",&cardPtr->face,&cardPtr->suit,*cardPtr,&cardPtr); 因为你用cardPtr->face时其实已经在引用"Ace"这个内存中的值了。用&cardPtr->face才是取cardPtr->face这个成员变量在堆栈中的值。 下面...

char * pformat = "hello" ; int *ptemp=(int *)&pformat ; &pformat,得到的是pformat的变量内存地址,其结果类型为char **:指向指针变量的指针,其实也就是一个内存地址,可以用整型指针变量来存储。 int *ptemp,这里的ptemp就是整型指针变...

D .第一次打印*(p++),先取值后++,也就是打印完p的地址才偏移的。k=&p,那么**k就等价于*p,所以打印的是第二个数组的值

int a[]; 数组的数组名本质上是个地址常量。示例程序如下: #includeint main(){int a[]={1,2,3,4,5,6,7,8,9,10};int *p=a; //指针变量p指向数组aint i;printf("%x\n\n",a);//以16进制输出数组名a的地址值for(i=0;i

swap(&x, &y); /*将x和y的地址值(即&x和&y)作为实参传递给形参*/ void swap(int *a, int *b) /*a和b是形参,接收地址类型的值*/ { int *t = a; /*声明定义一个地址变量(称指针)t赋初值以地址变量a的值(&x)*/ a = b; /*现在地址变量a存的值...

int a[4][5],*p[4],i; //p表示指针数组 for( i=0;i

网站地图

All rights reserved Powered by www.1862.net

copyright ©right 2010-2021。
www.1862.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com