C에서 system() 함수를 사용하여 실행 파일을 실행할 때 매개변수로 전달된 파일의 경로와 실행파일 경로에 모두 공백이 있으면 오류가 발생합니다. 오류 메시지는 다음과 같습니다.
The filename, directory name, or volume label syntax is incorrect.
system() 함수는 시스템 명령을 Windows 명령 프로세서(cmd)에 전달하여 실행합니다. 명령에 공백이 포함되어 있으면 명령 프로세서는 첫 번째와 마지막 큰따옴표 사이의 모든 내용을 단일 인수로 해석합니다. 그러나 이 경우 실행 파일 경로 주변의 큰따옴표와 매개변수 파일 경로 주변의 큰따옴표로 인해 충돌이 발생합니다.
이 문제를 해결하려면 이중 인용부호 세트를 추가로 사용하세요. 전체 명령을 묶으려면 따옴표를 추가해야 합니다. 이런 방식으로 명령 프로세서는 공백 및 기타 큰따옴표가 포함되어 있어도 가장 바깥쪽 큰따옴표 내의 모든 내용을 단일 인수로 처리합니다.
<code class="cpp">system("\"\"C:\Users\Adam\Desktop\pdftotext\" -layout \"C:\Users\Adam\Desktop\week 4.pdf\"\"");</code>
<code class="cpp">system("cmd /S /C \"\"D:\test\" nospaces \"text with spaces\"\"");</code>
위 내용은 C \의 `system()` 함수를 사용할 때 매개변수의 공백을 처리하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!