char *a = "HI\r\nAA"; printf("%s\n", a);
출력하면 HI와 AA가 서로 다른 줄에 출력이 됩니다. \r\n을 줄바꿈 문자가 아니라 그냥 그 문자 자체로 출력을 하고싶은데요.. 문자열을 가공해서 출력하는 방법외에 다른 방법은 없나요?
\n을 문자 자체라니요?
"\n\r"을 의미하시는건지... 0x0D 0x0A 라인피드 문자를 처리없이 출력하시겠다는 건지...
자세하게 적어주심이... ^^
"HI\\r\\nAA" 를 찾으신단 말씀이신지요?
"HI\\r\\nAA"
앞에 \를 하나 더 붙여주면 되죠..
특수문자를 출력할때.. 보통 \를 사용해서 출력하지 않나요?
\\r\\n 이렇게..
Be cool...
에고.. 제가 질문을 에매하게 했나보네요.. FTP 서버를 만드는데 클라이언트로부터 넘어온 요청을 디버깅 메세지로 그대로 뿌려줄려고 합니다.
만약 클라이언트가 LIST를 요구했다면 LIST\r\n 이라는 값이 넘어오겠죠. 이걸 그대로 디버깅 메세지로 찍었더니 줄바꿈이 일어나더라구요. 그래서 문자열에서 \r\n을 찾아서 시작부분을 \0로 바꿔준후 출력을 하도록 만들었습니다.
그냥 이렇게 쓰면되는데 다른 좋은 방법이 혹시 없나싶어서 질문 올린거였습니다. :oops: 혹시 제가 너무 귀차니즘에 빠진건 아닌지......
====================== BLOG : http://superkkt.com
printf()를 새로 만드시지 않는이상은 문자열을 변환하셔야 될겁니다.
일단 저같은 경우 표준C/C++에서 입력처리 안하는 기능은 본적이 없군요...
Windows 같은 경우 SetConsoleMode API로 프로세싱 안하고 출력시킬 수 있습니다.http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/setconsolemode.asphttp://msdn.microsoft.com/library/en-us/dllproc/base/getconsolemode.asp GetConsoleMode로 구해서 ENABLE_PROCESSED_OUTPUT 비트를 제외시킨 후 SetConsoleMode하면 되겠군요. :lol:
아... 아직 제 Linux Box가 VMware에만 있어서 정확히 뭐가 Linux에 대응되는지 모르겠군요... :cry:
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
\n을 문자 자체라니요?"\n\r"을 의미하시는건지... 0x0D
\n을 문자 자체라니요?
"\n\r"을 의미하시는건지... 0x0D 0x0A 라인피드 문자를 처리없이 출력하시겠다는 건지...
자세하게 적어주심이... ^^
[code:1]"HI\\r\\nAA"[/code:1]
"HI\\r\\nAA"
를 찾으신단 말씀이신지요?앞에 \를 하나 더 붙여주면 되죠..특수문자를 출력할때.. 보통
앞에 \를 하나 더 붙여주면 되죠..
특수문자를 출력할때.. 보통 \를 사용해서 출력하지 않나요?
\\r\\n 이렇게..
Be cool...
에고.. 제가 질문을 에매하게 했나보네요.. FTP 서버를 만드는데 클라
에고.. 제가 질문을 에매하게 했나보네요.. FTP 서버를 만드는데 클라이언트로부터 넘어온 요청을 디버깅 메세지로 그대로 뿌려줄려고 합니다.
만약 클라이언트가 LIST를 요구했다면 LIST\r\n 이라는 값이 넘어오겠죠. 이걸 그대로 디버깅 메세지로 찍었더니 줄바꿈이 일어나더라구요. 그래서 문자열에서 \r\n을 찾아서 시작부분을 \0로 바꿔준후 출력을 하도록 만들었습니다.
그냥 이렇게 쓰면되는데 다른 좋은 방법이 혹시 없나싶어서 질문 올린거였습니다. :oops: 혹시 제가 너무 귀차니즘에 빠진건 아닌지......
======================
BLOG : http://superkkt.com
printf()를 새로 만드시지 않는이상은 문자열을 변환하셔야 될겁니다.
printf()를 새로 만드시지 않는이상은 문자열을 변환하셔야 될겁니다.
일단 저같은 경우 표준C/C++에서 입력처리 안하는 기능은 본적이 없군요
일단 저같은 경우 표준C/C++에서 입력처리 안하는 기능은 본적이 없군요...
Windows 같은 경우 SetConsoleMode API로 프로세싱 안하고 출력시킬 수 있습니다.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/setconsolemode.asp
http://msdn.microsoft.com/library/en-us/dllproc/base/getconsolemode.asp
GetConsoleMode로 구해서 ENABLE_PROCESSED_OUTPUT 비트를 제외시킨 후 SetConsoleMode하면 되겠군요. :lol:
아... 아직 제 Linux Box가 VMware에만 있어서 정확히 뭐가 Linux에 대응되는지 모르겠군요... :cry:
댓글 달기