char 문자열 쪼개기
글쓴이: wksakfak / 작성시간: 일, 2016/09/25 - 8:47오후
VC++입니다.
숫자 세자리를 CHAR로 입력받고 이 값을 한자리씩 출력하는 건데요.
컴파일해보니 숫자 옆에 쓰레기값이 출력되서요.
뭐가 문제인지 모르겠습니다.
#include <stdio.h> #pragma warning(disable:4996) int main() { char ch[3]; char* ptr; char* dest = NULL; printf("세자리 숫자를 입력하세요\n"); scanf("%s", &ch); ptr = ch; dest = malloc(sizeof(char) * 3); while (*ptr != NULL) { memcpy(dest, ptr, sizeof(char)); printf("%s\n", dest); ptr++; } system("pause"); return 0; }
Forums:
dest가 초기화가 되지 않았기 때문에, 쓰레기가
dest가 초기화가 되지 않았기 때문에, 쓰레기가 들어갈지 안들어갈지는 케바케가 됩니다.
와 같이 memset으로 초기화를 해 주세요.
다만, dest에 copy를 하기 보다는 ptr을 직접 출력해도 될 것 같은데요.
...
댓글 달기