2007年7月24日火曜日

ひとつの要素のメモリ領域を確保して初期化する

Personal構造体の領域を確保し、メンバ変数を初期化します。そして、領域の先頭アドレスを返します。


Personal* crPersonal(void)
{
Personal *pp;

pp = (Personal *)malloc(sizeof(Personal));
if ((Personal *)NULL == pp ) {
return NULL;
}
pp->id = 0;
pp->name = (char *)NULL;
pp->birthday_y = 0;
pp->birthday_m = 0;
pp->birthday_d = 0;
pp->next = (struct personal *)NULL;

return pp;
}





メモリ確保はmalloc関数で行います。
malloc関数には引数で指定したバイト数の領域を確保し、その領域の先頭アドレスを返します。
sizeof演算子は、この型のサイズを返します。このように実際のサイズは処理系によって変わってくるので、このような計算はコンパイラにお任せします。

0 件のコメント: