scanf
을 사용하여 입력을 읽으려고하고 char *
dynamically as specified by GCC manual에 저장하려고합니다. 그러나 컴파일 시간 오류가 발생합니다.동적 문자열 입력 - scanf ("% as")를 사용합니다.
char *string;
if (scanf ("%as",&string) != 1){
//some code
}
else{
printf("%s\n", *string);
free(string);
//some code
}
'-ansi'또는 '--std = c98'로 컴파일하는 것은 scanf ("% as")와 함께 작동합니다. –
GCC/glibc 문서에 언급되지 않았기 때문에'm' 플래그의 배경 정보 : http://gcc.gnu.org/ml/gcc-patches/2007-09/msg01342.html –
' a'한정자는 gcc에 -D_GNU_SOURCE를 전달하지만 물론'm'을 사용하는 것이 더 좋습니다. – amc