题目内容

若有说明:int *p,m=5,n;以下正确的程序段是( )。

A. scanf("%d",&n);*p=n;
B. p=&n;scanf("%d",*p)
C. p=&n;scanf("%d",&p);
D. p=&n;scanf("%d",p);

查看答案
更多问题

变量p为指针变量,若p=&a,下列写法不正确的是()。

A. *(p++)==a++
B. &*p==&a
C. (*p)++==a++
D. *&a==a

有以下语句:int a[5]={0,1,2,3,4},i;int *p=a; 设0≤i<5,对a数组元素不正确的引用是( )。

A. *(&a[i])
B. a[p-a]
C. *(*(a+i))
D. p[i]

若已定义: int q=5; 对① int *p=&q;和② p=&q; 这两条语句理解错误的是( )。

A. ①是对p定义时初始化,使p指向q;而②是将q的地址赋给p
B. ①和②中的&q含义相同,都表示给指针变量赋值
C. ①是对p定义时初始化,使p指向q;而②是将q的值赋给p所指向的变量
D. ①和②的执行结果都是把q的地址赋给p

若有以下程序段,则叙述不正确的是( )。char s[]="computer"; char *p; p=s;

A. s和p值相等
B. 数组s的长度和p所指向的字符串长度相等
C. *p与s[0]相等
D. 数组s中的内容和指针变量p中的内容相等

答案查题题库