c语言结构体类型的多维数组的读取
2021-03-04 本文已影响0人
潘雪雯
- 定义一个结构体
struct ip_cell_pool {
unsigned int addrcnt;
unsigned int addrmax;
unsigned int ip_cell_array[5];
};
- 定义一个结构体数组
struct ip_cell_pool pool_array[2];
- 为结构体数组赋值
pool_array[1].addrcnt = 4;
pool_array[1].addrmax = 10;
pool_array[1].ip_cell_array[0] = 100;
printf("当前计数值是%d, 最大值是%d, 数组中的值为%d\n", pool_array[1].addrcnt, pool_array[1].addrmax, pool_array[1].ip_cell_array[0]);
- 定义一个函数为结构体数组中的数组赋值
// 指针型函数返回一个地址给调用者
static inline unsigned int *ip_cell_test(struct ip_cell_pool *ippool, int numa_id, int num)
{
return &ippool[numa_id].ip_cell_array[num];
}
printf("数组中的数字%d\n", *ip_cell_test(pool_array, 1, 0));