读书人

瞅c++ primer 的一个疑问望大家不吝

发布时间: 2012-08-09 15:59:21 作者: rapoo

看c++ primer 的一个疑问,望大家不吝赐教。
在讲用typedef简化指向多维数组的指针时,书中用了:
typedef int int_array[4];
int_array *ip=ia;

第二句怎么理解,请大家细致的讲下,谢谢。

[解决办法]
typedef 声明;
声明中的对象被“提升”为类型

typedef int int_array[4];
typedef 之后的int int_array[4]是个数组对象的声明
typedef 则将 int_array“提升”为一个类型

int_array *ip=ia;
int_array *ip则表示ip是一个指向int_array 这种类型中任一个对象的指针变量,
ip=ia;用ia这个对象对ip初始化
注意ia应该是int [4]类型相关的

但LZ代码没有ia的声明。它是int ia[4],还是int ia[N][4]...?



读书人网 >C语言

热点推荐