카테고리 없음

[C언어] 숫자를 문자로 변환 - itoa()

s뽈록이s 2013. 6. 20. 14:57
void main(void)
{
	int num;
	char str[10];
	printf("숫자를 입력해 주세요 : ");
	scanf("%d", &num);

	itoa(num, str, 10);
	puts(str);
}

프로그램 실행화면


char *itoa(int value, char *string, int radix);


atoi()함수의 반대로 동작하는 함수라고 할 수 있겠다. integer를 보내주면 string문자열을 얻을 수 있다.


보통 연산할 때는 integer형으로 연산한 후 화면에 출력해주고자 할 때 문자열로 바꾸어 주어여만할 때가 있다. 이런 상황에 활용되는 함수이다. itoa()는 integer to ascii의 줄임말이다.


세번 째 인자 radix는 몇 진수로 변환할 것인지 정보를 전달해 주는 인자이다. 위의 프로그램에서는 10을 넣어주었기 때문에 10진수로 변환되었다.


만약 10진수를 2진수로 바꾸어 출력하고 싶을 때 사용한다면 비트 단위로 계산하지 않고 바로 출력해줄 수 있다. 2진수 뿐 아니라 3진수, 4진수 전부 다 가능하다.