10.3 메모리 사용과 지역/전역 변수, 동적 메모리 할당에 대한 고찰
이름을 물어보고 사용자로부터 입력을 받아 이를 저장하고 화면에 출력하는 코드를 작성하려고 합니다. 크게 두 가지 함수, 이름을 입력받은 함수와 main() 함수로 구성하여 코드를 작성해 보겠습니다.
dynamic_4.c
#include <stdio.h> char* WhatIsYourName(void); // 함수 출력이 문자형 변수의 주소 main() { char *name1; // 문자형 포인터 변수 선언 char *name2; name1 = WhatIsYourName(); name2 = WhatIsYourName(); printf("Hi, %s\n", name1); printf("Hi, %s\n", name2); } char* WhatIsYourName(void) { char name[15]; // 지역 변수 printf("당신의 이름을 입력 해주세요: "); gets(name); return name; }