2009-12-20 5 views
6

정수를 반환하는 코드를 작성했습니다.이 코드는 ncurses 라이브러리에서 printw를 사용하여 출력해야합니다. 그러나, printw는 char *만을 사용하기 때문에 출력 방법을 알 수는 없습니다.C *에서 char *에 정수 저장하기

기본적으로 정수를 char 배열에 저장하거나 printw를 사용하여 정수를 출력하는 방법이 있습니까?

답변

9

printw()은 형식 지정자로 const char *을 허용합니다. 당신이 원하는 무엇입니까

printw("%d",yournumber); 
+1

+1 옳은 대답 – dfa

+0

호기심에서 "% d"는 정확히 무엇입니까? – Galileo

+2

서식의 모든 기능을 배우려면 printf 맨 페이지 (http://linux.die.net/man/3/printf)를 참조하십시오. 특히 % d는 형식 문자열 뒤에 오는 첫 번째 매개 변수로서 부호있는 정수를 의미합니다. 하지만 그것은 빙산의 최상위조차도 아니다 ;-) –

0

integer를 ASCII 문자열로 변환하려면 itoa() 또는 sprintf()를 사용하십시오.

예 :

char s[50]; 
sprintf(s, "%d", someInteger); 

지금 u는 당신을 도울 것입니다 문자 *

+4

죄송합니다, 내 대답은 허튼 소리입니다. 마이클을 사용하십시오. ncurses printw가 무엇인지 확실하지 않아서 해결 방법을 작성했습니다. –

+1

답변을 삭제할 수 있습니다. ''itoa'' - 표준 C ('atoi' 만)에는 그런 것이 없기 때문에'snprintf (s, sizeof (s), "% d", someInteger)'- - 더 안전 해. – Artyom

0

itoa으로의를 전달할 수 있습니다.