malloc関数のテスト

// malloc関数のテスト

#include <stdio.h>
#include <malloc.h>

void addValue(char** cbuffer)
{
	cbuffer[2] = "test";

	printf("サイズ:%d 内容:%s\n",sizeof( cbuffer[2] ),cbuffer[2]);

	cbuffer[2] = "testtest";

	printf("サイズ:%d 内容:%s\n",sizeof( cbuffer[2] ),cbuffer[2]);

	printf("サイズ:%d \n",sizeof( cbuffer ));
}


void main()
{
	long *buffer;
	char **cbuffer;

	// long型変数40個分のメモリを確保
	buffer = (long *)calloc( 40, sizeof( long ) );
	if( buffer != NULL )
		printf( "long 整数 40 個分の領域を割り当てました。\n" );
	else
		printf( "領域の割り当てができませんでした。\n" );

	free( buffer );


	// char型ポインタ変数4個分のメモリを確保
	cbuffer = (char **)calloc( 4, sizeof( char* ) );

	if( cbuffer != NULL )
		printf( "char 整数 4 個分の領域を割り当てました。\n" );
	else
		printf( "領域の割り当てができませんでした。\n" );

	addValue(cbuffer);

	printf("サイズ:%d 内容:%s\n",sizeof( cbuffer[2] ),cbuffer[2]);
	free( cbuffer );


}
                                                                                          • -

配列の配列を動的に取得してみました。

ちょっとした確認です。