캐리지 리턴 (\r\n
또는 그냥 \n
)에서 문자열을 sscanf
으로 분할하는 방법은 무엇입니까?sscanf를 사용하여 캐리지 리턴에 문자열을 분할하는 방법은 무엇입니까?
1
A
답변
2
:
const char *str = ... // = source string
while (str[0]) {
char buffer[100];
int n;
sscanf(str, " %99[^\r\n]%n", buffer, &n); // note space, to skip white space
str += n; // advance to next \n or \r, or to end (nul), or to 100th char
// ... process buffer
}
내가 strtok()
또는 strpbrk()
를 사용하는 것을 선호하지만
char *str = ... // = source string--not constant, as it gets destroyed
char *out = strtok(str, "\r\n");
while (out) {
// ... process 'out'
out = strtok(0, "\r\n"); // advance to next part
}
1
scanf
은 문자열을 분할하지 않으므로 구문 분석합니다. 당신이 (포함되지 않음) 캐리지 리턴 또는 줄 바꿈까지 읽고 싶다면, 당신은 사용할 수 있습니다
char buffer[100];
scanf("%99[^\r\n]", buffer);
을 당신이 단지는 fgets를 사용하고 원치 않는 후행 문자를 제거 떨어져 아마 더 좋을 것 같아하지만. 두 번째 부분이 시작되면 결정하기 위해, 약간 크리스의 답변을 수정
관련 문제
- 1. 자바에서 캐리지 리턴에 일치하는 정규식
- 2. 문자열을 한 번 분할하는 방법은 무엇입니까?
- 3. Java를 사용하여 문자열을 분할하는 방법은 무엇입니까?
- 4. 정규식을 사용하여 문자열을 문자로 분할하는 방법은 무엇입니까?
- 5. CSH로 문자열을 분할하는 방법은 무엇입니까?
- 6. XML 문자열을 분할하는 방법은 무엇입니까?
- 7. 도트로 문자열을 분할하는 방법은 무엇입니까?
- 8. 대문자로 문자열을 분할하는 방법은 무엇입니까?
- 9. J2ME에서 문자열을 분할하는 방법은 무엇입니까?
- 10. 공백없이 문자열을 분할하는 방법은 무엇입니까?
- 11. vba에서 여러 delimeter로 문자열을 분할하는 방법은 무엇입니까?
- 12. C#에서이 문자열을 분할하는 방법은 무엇입니까?
- 13. JSTL에서 문자열을 올바르게 분할하는 방법은 무엇입니까?
- 14. 다른 문자열로 문자열을 분할하는 방법은 무엇입니까?
- 15. C에서 문자열을 토큰으로 분할하는 방법은 무엇입니까?
- 16. 2 개의 인수로 문자열을 분할하는 방법은 무엇입니까?
- 17. T-SQL에서 주소 문자열을 분할하는 방법은 무엇입니까?
- 18. PHP로 긴 문자열을 분할하는 방법은 무엇입니까?
- 19. 문자열을 의미있는 토큰으로 분할하는 방법은 무엇입니까?
- 20. AutoIt에서 공백으로 바이트 문자열을 분할하는 방법은 무엇입니까?
- 21. JS 문자열을) 또는 =로 분할하는 방법은 무엇입니까?
- 22. .csv 파일에서 문자열을 읽고 분할하는 방법은 무엇입니까?
- 23. Scheme에서 문자열을 단일 문자열로 분할하는 방법은 무엇입니까?
- 24. 하위 문자열을 사용하여 문자열을 분할하는 방법
- 25. 면도기 (Umbraco에서)를 사용하여 텍스트 문자열을 분할하는 방법은 무엇입니까?
- 26. CMAKE를 사용하여 문자열을 목록으로 분할하는 일반적인 방법은 무엇입니까?
- 27. 빠르고 깨끗한 방법은 경로로 문자열을 분할하는
- 28. 문자열을 분할하는 복잡한 정규식
- 29. 고정 된 문자 순서로 문자열을 분할하는 방법은 무엇입니까?
- 30. 줄 바꿈을 사용하여 문자열을 분할하는 올바른 방법입니까
은'\ r'가 ... – mtahmed