다른데 질문 할 곳이 딱히 없어서 여기다가 올립니다. (GCC 컴파일러 쓰고 있어요. ^^) gets는 공백 문자까지 다 받아들이는데.. scanf는 공백나오면 끝내잖습니까? 그런데... FreeBSD에서 GCC 사용하고 있습니다. gets()를 가르켜서 안전하지 못하다고 컴파일하면 메시지가 나옵니다. 예전에 이거 말고 다른 방법으로 공백 있는 string 입력을 받은 것 같은데.. 고수님들의 답변을 부탁드립니다. 안녕히계십시오.
gets 는 입력 길이를 검사하지 않아 안전하지 않습니다. fgets 를 쓰면 공백이 있는 줄을 길이 제한과 함께 읽을 수 있고, 읽은 뒤 끝의 줄바꿈 문자는 직접 지우면 됩니다.