반응형
사용자로부터 단어를 입력받는 공간을 동적 메모리로 할당받아 보자. 단어의 최대 크기는 50이라고 가정한다. 단어의 주소를 반환하는 함수 char *get_word()를 작성하고 테스트한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #include <stdio.h> #include <stdlib.h> char* get_word(); int main(void) { char *p; p=get_word(); printf("동적 메모리에 저장된 단어는 %s입니다.\n",p); free(p); //어차피 p와 get_word 의 s의 주소가 같아서 p를 free해줘도 된다. return 0; } char* get_word() { char *s; s=(char*)malloc(sizeof(char)*50); if(s==NULL) { printf("메모리할당오류\n"); exit(1); } printf("단어를 입력하세요: "); gets(s); return s; } | cs |
반응형
'컴퓨터 & 프로그래밍 & 전자공학 > C언어' 카테고리의 다른 글
전화 번호부 작성 (2) | 2017.02.25 |
---|---|
양의 정수 저장 (0) | 2017.02.22 |
주소록 저장 (0) | 2017.02.21 |
문자열 동적 메모리 (0) | 2017.02.21 |
양의 정수들의 합 (0) | 2017.02.21 |