...둘의 형이 다르군요-_- 진작 말씀하시지;;; 두 개의 타입이 다르면 못 너는 걸로 알고 있는데 말이죠. 게다가 char형을 저장할 수 있는 곳에 int형을 넣는 것은 언어도단!
강제 캐스팅이라도 하면 되겠지만 그럼 정보가 변질되니까... 뭐 불가능 할겁니다.(아마도요)
뭐 안되는건 아닙니다만 왜 저래야 하는지 모르겠습니다.
a[1] = (char)b;
하면 일단은 a[1]=1 이 들어갑니다. 물론 출력하실 때 printf("%d", a[1]); 로 하셔야 됩니다.
문자 '1' 을 넣고 싶으셨던 거라면
a[1] = b + '0'; 하시면 되고요. 이 때는 printf("%c", a[1]) 하시면 됩니다.
2006.08.30 17:16:04 (*.67.220.110)
랩하는좀비
오라클이 뭔지도 모릅니다(...) 전 한없이 초보입니다
2006.08.30 23:19:57 (*.98.61.173)
사미시엘
sprintf(a[1], "%d", b); 라고 하면 들어갈껍니다..[아마도..]emoticon_20
2006.08.31 08:21:44 (*.149.156.23)
송군
itoa(b, a, 10); 이라고 해도 들어가긴 합니다.
2006.08.31 09:46:02 (*.78.64.79)
음..
사미시엘 / 안들어갑니다.
int sprintf ( char * buffer, const char * format [ , argument , ...] );
이렇게 sprintf가 정의 되는데 a[1] 은 char 형태 입니다.
어거지로 sprintf(&a[1], "%d", b); 라고 할 수 있으나
a[2] 에 ' ' 이 들어가게 되겠죠. 밑의 itoa 도 마찬가지 입니다.