文章目录
  1. 1. 指针

Super-Heroes-meet-Flemish-Art_batman
C语言问题,记录,备忘.

指针

1.如果i是变量,且p指向i,那么下列哪些表达式是i的别名?

1
2
(a)*p   (b)&p    (c)*&p    (d)&*p   
(e)*i (f)&i (g)*&i (h)&*i

只有g是i的别名

检验代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<stdio.h>
int main(void)
{
int i = 5;
int *p = &i;

printf("(a) *p %d", *p);
printf("(b) &p %d\n", &p);
printf("(c) *&p %d\n", *&p);
printf("(d) &*p %d\n", &*p);
//printf("(e) *i %d\n", *i); /*无法编译, *i不是指针*/
printf("(f) &i %d\n", &i);
printf("(g) *&i %d\n", *&i); /*是别名*/
//printf("(h) &*i %d", &*i); /*无法编译 *i不是指针*/

return 0;
}

运行结果:

1
2
3
4
5
(a)     *p      5(b)    &p      9697724
(c) *&p 9697736
(d) &*p 9697736
(f) &i 9697736
(g) *&i 5
文章目录
  1. 1. 指针