据说看懂这道题,就学会指针了......分享给大家看看

2020-02-03 10:12发布

指针的使用一直都是初学者的第一道坎儿,绕来绕去的。。。以下这道题,据说琢磨透了,就基本不怕指针了..~~

用变量a给出下面的定义
a) 一个整型数
b)一个指向整型数的指针( A pointer to an integer)
c)一个指向指针的的指针,它指向的指针是指向一个整型数( A pointer to a pointer to an intege)r
d)一个有10个整型数的数组( An array of 10 integers)
e) 一个有10个指针的数组,该指针是指向一个整型数的。(An array of 10 pointers to integers)
f) 一个指向有10个整型数数组的指针( A pointer to an array of 10 integers)
g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer to a function that takes an integer as an argument and returns an integer)
h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数( An array of ten pointers to functions that take an integer argument and return an integer )

答案是
a) int a; // 一个整型数 An integer
b) int *a; // 一个指向整型数的指针 A pointer to an integer
c) int **a; // 一个指向指针的的指针 A pointer to a pointer to an integer
d) int a[10]; // 一个有10个整型数的数组 An array of 10 integers
e) int *a[10]; // 一个有10个指针的数组 An array of 10 pointers to integers
f) int (*a)[10]; // 一个指向有10个整型数数组的指针 A pointer to an array of 10 integers
g) int (*a)(int); // 一个指向函数的指针 A pointer to a function a that takes an integer argument and returns an integer
h) int (*a[10])(int); // 一个有10个指针的数组,指向一个整形函数并有一个整形参数 An array of 10 pointers to functions that take an integer argument and return an integer
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
98条回答
JUNGO
1楼-- · 2020-02-07 22:25
学习了
first_blood
2楼-- · 2020-02-08 02:06
从来不记,用的时候查,所以我当初面试没过
ylei12
3楼-- · 2020-02-08 03:02
mark
STM32W108
4楼-- · 2020-02-08 03:14
b) int *a;  相当于  int (*a);
括号内含义:a是指针
括号外含义:指针指向类型是int

c) int **a; 相当于:int *(*a);
括号内含义:a是指针
括号外含义:指针指向类型是int *
   
e) int *a[10]; 相当于:int (*a[10]);
括号内含义:a是指针数组
括号外含义:指针指向类型是int

f) int (*a)[10];
括号内含义:a是指针
括号外含义:指针指向类型是int[10]

g) int (*a)(int);  
括号内含义:a是指针数
括号外含义:指针指向类型是int()(),//没有参数,返回int的函数

h) int (*a[10])(int);
括号内含义:a是指针数数组
括号外含义:指针指向类型是int()(),//没有参数,返回int的函数
bobqq
5楼-- · 2020-02-08 08:35
 精彩回答 2  元偷偷看……
cu_ice
6楼-- · 2020-02-08 08:47
mark指针

一周热门 更多>