next up previous contents
Next: 記憶體重新配置 Up: 記憶體管理 Previous: 記憶體管理函式   Contents   DYWANG_HOME

記憶體動態配置

  1. 動態配置記憶體範例:宣告為 char 指標,使用前以 malloc 函式配置記憶體大小。
    [dywang@dyw219 zzz]$ vim malloc1.c 
    [dywang@dyw219 zzz]$ cat malloc1.c 
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    int main() {
    	char name[20];
    	char *description;
    
    	strcpy(name, "De-Yu Wang");
    
    	description = malloc( 10 * sizeof(char) );
    	if( description == NULL ) {
    		fprintf(stderr, "Error - unable to allocate required memory\n");
    		return 1;
    	} else {
    		strcpy( description, "CSIE CYUT");
    	}
    	printf("Name: %s\n", name );
    	printf("Description: %s\n", description );
    	return 0;
    }
    
  2. 編譯
    [dywang@dyw219 zzz]$ gcc -o malloc1 malloc1.c
    
  3. 執行
    [dywang@dyw219 zzz]$ ./malloc1 
    Name: De-Yu Wang
    Description: CSIE CYUT
    



De-Yu Wang 2021-01-11