CS/C++

문자와 숫자 간 변환법(char to int, int to char)

PIYA 2022. 7. 22.

문자와 숫자 간 변환법(char to int, int to char)

int to char

int형을 char배열에다가 넣으려면?
sprintf()를 이용하면 된다

int num = 3;
char str[15];
sprintf(str, "%d", num);

char* to int

<stdlib.h>에 있는 atoi() 함수를 이용하면 된다.
자매품 atof(char to double), atol(char to long int)도 있다.

사용법

char str[10] = "123";
int num = atoi(str);

하지만, char* 형을 int로 바꾸는 것임에 유의해야 한다.

만약 str[10] 배열 안의 수 123이 1,2,3이고 이를 숫자로 바꾸려면?
char*을 만들어줘도 된다.

char* arr;
arr = (char*)malloc(2*sizeof(int));
arr[0] = '1';
arr[1] = '\0';
printf("%d", atoi(arr));

char to int

일단 단일 캐릭터가 0부터 9까지 숫자라면, n-'0'으로 직접 계산해서 넣을 수 있다.

댓글