<div><font color="#404040" face="gulim, sans-serif"><span style="font-size:13px;line-height:22.1000003814697px;">죄송합니다만 아까 했던 질문에서 계속 반복된 질문을 하게 되었는데요..</span></font></div> <div><font color="#404040" face="gulim, sans-serif"><span style="font-size:13px;line-height:22.1000003814697px;">그런데 sprintf문에서 뭔가 이상한 의심이 생겼는데요</span></font></div> <div><font color="#404040" face="gulim, sans-serif"><span style="font-size:13px;line-height:22.1000003814697px;">제가 알기로는 printf와 sprintf의 유일한 차이점이 stdout로 출력하는지 아님 할당된 변수에 출력하는지 이 차이인 것으로 아는데요</span></font></div> <div><font color="#404040" face="gulim, sans-serif"><span style="font-size:13px;line-height:22.1000003814697px;"><br></span></font></div> <div><font color="#404040" face="gulim, sans-serif"><span style="font-size:13px;line-height:22.1000003814697px;">그런데 printf의 </span></font><span style="font-family:'바탕';line-height:21.3333320617676px;text-align:center;"><font color="#464646" style="font-size:13.3333330154419px;"><b>%d서식문자</b>는 아래 링크처럼 </font><font size="4"><font style="font-weight:bold;">출력자료형이 int</font><font color="#464646" style="font-weight:bold;">형</font></font><font color="#464646" style="font-size:13.3333330154419px;">으로 알고 있는데요</font></span></div> <div><span style="font-size:13px;line-height:22.1000003814697px;color:#404040;font-family:gulim, sans-serif;"><a target="_blank" href="http://blog.daum.net/_blog/BlogTypeView.do?blogid=0TNH9&articleno=54&_bloghome_menu=recenttext" target="_blank">http://blog.daum.net/_blog/BlogTypeView.do?blogid=0TNH9&articleno=54&_bloghome_menu=recenttext</a></span></div><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"></span> <div><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><br></span></div> <div><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">그렇다면 아래의 소스코드처럼 </span><span style="line-height:22.1000003814697px;">sprintf(str, "%d시%d분%d초\n",hour,minute,second);로 사용한다면</span></div> <div><span style="line-height:22.1000003814697px;">hour,minute,second는 전부 int형으로 str배열에 저장되는데</span></div> <div><span style="line-height:22.1000003814697px;">그렇다면 </span></div><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"></span> <div><span style="line-height:22.1000003814697px;">str=new char[digit(hour)+digit(minute)+digit(second)+4];에서 </span></div> <div><span style="line-height:22.1000003814697px;">digit(minute)와 </span><span style="line-height:22.1000003814697px;">digit(hour)등은 전부 int자료형의 크기인 4바이트를 할당해야 하나요?</span></div> <div>아니면 char은 크기가 1byte이고 여기에는 -128~127 까지 저장하기에 충분하니까 그냥 1바이트로 할당해도 충분할 지 알고 싶네요.</div><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"></span> <div><span style="line-height:22.1000003814697px;"><br></span></div> <div><span style="line-height:22.1000003814697px;">아시는 분 답변 주시면 정말 좋겠네요.</span></div> <div><span style="line-height:22.1000003814697px;"><br></span></div> #include <iostream><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">using std::cout;</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">using std::endl;</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">int digit(int _digit);</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">class Time</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">{ char* str;</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">public:</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> </span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> Time(int hour,int minute=0,int second=0)</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> {</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> str=new char[digit(hour)+digit(minute)+digit(second)+4];</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> sprintf(str, "%d시%d분%d초\n",hour,minute,second);</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> }</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> ~Time()</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> {</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> delete []str;</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> }</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> void ShowTime()</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> {</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> printf("%s",str);</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> }</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">};</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">int digit(int _digit)</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">{</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> </span><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">return 4;</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">};</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">int main()</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">{</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> Time time1=Time(19,1);</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> time1.ShowTime();</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"> return 0;</span><br style="margin:0px;padding:0px;color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;"><span style="color:#404040;font-family:gulim, sans-serif;font-size:13px;line-height:22.1000003814697px;">}</span>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.