카테고리 없음

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

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

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

프로그램 실행화면


char *ultoa(unsigned long value, char *string, int radix);


숫자를 문자로, 문자열로 변환해 주는 함수이다. 여기서 숫자의 변수형으로는 unsigned long 이다. 즉 부호가 없다. 그냥 long으로 선언하면 signed long으로 선언된다.


부호없는 변수를 선언할 때에는 꼭 unsigned를 붙여 주어야만 한다. 세번째 인자인 radix는 숫자를 문자열로 변환하되 몇진수로 변환할 것인지 정해주는 녀석이다.


여기에 2를 넣어 준다면 2진수로 변환이 가능하다. 10진수를 2진수로 변환할 때 비트단위로 계산해 줄려면 살짝 복잡했는데 이 함수를 이용하면 쉽게 2진수로 변환하여 출력해줄 수 있다.