在这行代码中,`const char * yes [5]`代表什么?

时间:2011-05-06 14:30:32

标签: c++ typedef

我对c ++中的typedef有疑问

例如:

typedef const char* yes[5];

typedef是否给出了const char *的替代名称,因此const char *的替代名称是yes[5]?这里yes[5]代表什么?以及如何创建两个yes数组并初始化两个中的一个?

2 个答案:

答案 0 :(得分:9)

没有。这声明了一个yes类型,它是一个包含五个const char * 的数组。

请参阅this link并在文本区域内输入const char *yes[5];

答案 1 :(得分:7)

不,这使得yes为一个包含常量字符数据的5个指针数组的新名称。

考虑它的方法是typedef看起来像声明之后的表达式,而声明中的名称被认为是新类型的名称,即被声明的类型。

因此typedef int x;使x成为int的新名称。这不会随阵列而改变。

相关问题