在探究过数组和结构体这两种非原生的数据类型之后,可能会想知道这两种类型结合成结构体数组,会有什么特征。
先看一个例子:
#include <stdlib.h>
struct xuzhina_dump_c05_s3_3
{
short idx;
int sq;
};
void init( struct xuzhina_dump_c05_s3_3* test, int n )
{
for ( int i = 0; i < n; i++ )
{
test[i].idx = i;
test[i].sq = i*i;
}
}
int sum( struct xuzhina_dump_c05_s3_3* test, int n )
{
int sum = 0;
for ( int i = 0; i < n; i++ )
{
sum += test[i].sq;
}
return sum;
}
int main(int argc, char* argv[] )
{
if ( argc < 2 )
{
return 1;
}
int num = atoi( argv[1] );
struct xuzhina_dump_c05_s3_3* test =
(struct xuzhina_dump_c05_s3_3*)malloc( num * sizeof( struct xuzhina_dump_c05_s3_3 ) );
init( test, num );
return sum( test, num );
}
更多内容请关注微信公众号"debugeeker"。链接https://mp.weixin.qq.com/s/HvnjJLrplHPfd-B_OI6Tow