2013-06-09 1 views
0

저는 C++ 프로그램을 코딩하고 있지만 변수에 " char을 저장하는 데 문제가 있습니다. 웹에서 솔루션을 검색 한 후 길을 전환했지만 언제든지 내가 [경고] \ 문자의 배열의 ..that 040을 얻을 컴파일 내가 저장할 :변수에 "(큰 따옴표) 문자를 저장하는 방법

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f 

제가했던이 : 어떤 풋

const char com1[]="reg add \"\\HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Terminal Server\"\\ /v fDenyTSConnections /t REG_DWORD /d 0 /f"; 

문제가 난 다음 얻을 출력을 결말 뒤의 백 슬래시 "..

reg add "\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server"\ /v fDenyTSConnections /t REG_DWORD /d 0 /f 

그래서 무엇을 할 pliz 말해 줄 수 ?? 대신 코드에서

const char com1[]="reg add \"\\HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Terminal Server\"\\ /v fDenyTSConnections /t REG_DWORD /d 0 /f"; 

사용

const char com1[]="reg add \"\\HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Terminal Server\" /v fDenyTSConnections /t REG_DWORD /d 0 /f"; 

+2

당신이 그것을 말 때문이 있습니다. '\ "\\'당신의 문자열을 수정하고 멀리 갈 것이 대답은 당신을 위해 일하면 ... – Dave

답변

0

도 여기에 " 후가 안되는 \있다가 - "\HKEY.

\"\\은 이스케이프 처리 된 및 이스케이프 처리 된 \을 의미합니다. 두 곳 모두에서 \"을 원할뿐입니다.

const char com1[]="reg add \"HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Terminal Server\" /v fDenyTSConnections /t REG_DWORD /d 0 /f"; 
+0

첫 번째 \ escaped 때문에이 작업을하지 못했습니다 – afr0ck

+0

질문에 따르면, 이것은 원하는 문자열입니다 :'reg add "HKEY ...'reg add"\ HKEY ..가 아닙니다. .' – Dukeling

관련 문제