초보인데 사용자가 입력한 문자열을 n번 출력하고 싶은데 공백이 n번만 출력됩니다. 이것이 내 코드입니다
으아악이 문제를 해결할 방법이 있나요? 감사해요.
보기 scanf
문서
귀하의 질문과 가장 관련성이 높은 두 가지 사항은 다음과 같습니다.
따라서 애플리케이션을 있는 그대로 실행하고 20 foo
并按 Enter 键,您将获得预期的输出(foo
打印 20 次)。但是,如果您输入 20
를 입력하고 Enter를 누르면 20개의 빈 줄이 표시됩니다.
"입력의 줄 바꿈은 형식의 줄 바꿈과 일치해야 합니다" 사양에 따라 panic: Unexpected newline
으로 인해 패닉이 발생합니다. 각 항목을 입력한 후 Enter 키를 누르고 싶다면 fmt.Scanf("%dn", &n)
를 사용할 수 있습니다. 그러나 귀하의 의견에서 언급한 것처럼 fmt.Scanf("%sn", &s)
를 사용하고 공백이 포함된 문자열을 입력하면 첫 번째 비트만 가져옵니다(panic: Unexpected newline
而出现恐慌,因为根据规范,“输入中的换行符必须与格式中的换行符匹配”。假设您希望在每次输入后按 Enter 键,则可以使用 fmt.Scanf("%dn", &n)
。但是,正如您在评论中提到的,如果您使用 fmt.Scanf("%sn", &s)
并输入包含空格的字符串,那么您只会得到第一位(因为 scanf
공백을 다음과 같이 사용하기 때문). 구분 기호).
stdin
에서 전체 행을 가져오려면 이 질문에 대한 답변에서
위 내용은 go에서 사용자가 입력한 문자열을 n번 인쇄합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!