我遇到了以下代码:
typedef wchar_t str_param_t[WP_STR_MAX_LEN];
然后:
typedef struct work_t
{
u32_t val1;
u32_t val2;
str_param_t data[WP_MAX_COUNT_STR];
} work_t;
我的问题是data
是什么类型的?
答案 0 :(得分:4)
这是一个长度为WP_MAX_COUNT_STR
的数组,其中包含wchar_t
个字符串,每个字符串的长度为WP_STR_MAX_LEN
。
答案 1 :(得分:2)
data
的类型是wchar_t类型的2D数组。
typedef wchar_t str_param_t[WP_STR_MAX_LEN];
str_param_t data[WP_MAX_COUNT_STR];
这等于:
wchar_t data[WP_STR_MAX_LEN][WP_MAX_COUNT_STR];
答案 2 :(得分:1)
让我简单解释一下typedef
像
typedef string FiveStrings[5];
通过定义typedef string FiveStrings[5]
,FiveStrings
可用于声明一个包含5个字符串的数组,每个字符串的类型为字符串(char *
)。
现在您可以使用以下新类型名称
FiveStrings countries = { "Ghana", "Angola", "Togo",
"Tunisia", "Cote d'Ivoire" };