有以下程序: #include<stdio.h> #inelude<stdlib.h> main() { int*a,*b,*c; a=b=c=(int*)malloc(sizeof(int)); *a

admin2013-10-14  11

问题 有以下程序:
#include<stdio.h>
    #inelude<stdlib.h>
    main()
    {  int*a,*b,*c;
       a=b=c=(int*)malloc(sizeof(int));
       *a=1;*b=2,*c=3;
       a=b:
       printf("%d,%d,%d\n",*a,*b,*c);
    }
    程序运行后的输出结果是(    )。【10年9月】

选项 A、3,3,3
B、2,2,3
C、1,2,3
D、1,1,3

答案A

解析 语句a-b=c=(int*)malloc(sizeof(int));的含义是申请了一个整型的存储空间,让指针a、b、c分别指向它,*a=1;*b=2,  *c=3;语句的含义为所申请的整型存储空间的内容,*c=3最后执行导致存储空间的内容为3。a=b的含义让指针a也指向指针b所指向的存储空间,a、b、c都指向整型的存储空间,里边的内容为3。
转载请注明原文地址:https://kaotiyun.com/show/00Jp777K
0

最新回复(0)