首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

请问数组初始化的有关问题

2012-03-26 
请教数组初始化的问题typedefstructaa{intacharb[10]}AstructAstructkkk请问如何给kkk初始化?不用一个

请教数组初始化的问题
typedef   struct   aa{
int   a;
char   b[10];
}Astruct;

Astruct   kkk;


请问如何给kkk初始化?   不用一个个变量去初始化吧.

[解决办法]
memset(kkk.b,0,sizeof(char)*10);
[解决办法]
memset(kkk.b,0,sizeof(Astruct));
[解决办法]
memset(kkk.b,0,sizeof(Astruct));

-----

memset(kkk.b,0,10*sizeof(char));

看准了啊,呵呵
[解决办法]
嗯,按楼上的说法进行初始化之后,最好再对kkk.a进行初始化
[解决办法]
请教数组初始化的问题 .我是完全真对题目.kkk.a就不关我的事了
[解决办法]
memset(&kkk.a,1,sizeof(int));


另外如何初始化不为〇的话这就失效了。呵呵

[解决办法]
看错总是难免的.
[解决办法]
你多加了一个&.你把每一位都设置成1干嘛
[解决办法]
TO sniperhuangwei()

memset(&kkk.a,1,sizeof(int));

这个语句和本意是冲突的。这里的kkk.a不会被置1的。

&不是多加了的,你翻查下memset()用法吧~ :)
[解决办法]
memset(&kkk.a,0,10*sizeof(char));

最好初始化为0,也即: '\0 '
[解决办法]
kkk.a是int型的。
[解决办法]
读K&R,然后使用正确的初始化方式。这里初始化与是不是字符数组无关,把上面的那些需要多余地调用函数的办法丢掉。

A structure declaration that is not followed by a list of variables reserves no storage; it merely describes a template or shape of a structure. If the declaration is tagged, however, the tag can be used later in definitions of instances of the structure. For example, given the declaration of point above,

struct point pt;

defines a variable pt which is a structure of type struct point. A structure can be initialized by following its definition with a list of initializers, each a constant expression, for the members:
struct maxpt = { 320, 200 };

[解决办法]
memset(&kkk.a,0,10*sizeof(char));

最好初始化为0,也即: '\0 '

--------------
lockhall(唐朝 老老实实看书) ( ) 信誉:100 Blog 加为好友 2007-06-14 23:30:08 得分: 0


kkk.a是int型的。


-------------------

-_-!
走眼了
memset(&kkk.b,0,10*sizeof(char));
[解决办法]
我也是惯性思维,把a又当成数组了.
[解决办法]
用不着给每个元素都初始化 :只要 memset(&kkk ,0 ,sizeof(struct aa))就可以了
你用的是char数组,长度是已知的;如果用 char * 的话就不能直接sizeof(struct aa)了.

热点排行