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 件のコメント:
コメントを投稿