반응형
아래 char[] 배열 내에 String형태로 "1234"를 넣었다.
이 내부에 1234는 정수형 타입이 아니고 문자형태이다. 즉 아스키코드가 49,50,51,52,NULL 이렇게 들어간 것이다.
이를 정수형태 integer 형태로 바꿔주는 함수이다.
#include<stdio.h>
#include<string.h>
int convert(char a[],int num);
int main()
{
char a[] = "1234"; // 문자열 아스키코드 [49,50,51,52,null] 이 입력된 상태.
int num=0;
num = convert(a,num);
printf("%d", num);
return 0;
}
int convert(char a[],int num)
{
for (int i = 0; a[i]; i++)
{
a[i] = a[i] - 48;
num = num * 10;
num = num + a[i];
}
return num;
}
(결과)
반응형
위 함수를 통과하면 실제 정수(int) 형태인 1234가 나오게 된다.
(C언어 아스키코드를 대문자를 소문자로, 소문자를 대문자로 변환시켜주는 코드)
https://ansan-survivor.tistory.com/1035
반응형
'C언어 \ C++' 카테고리의 다른 글
[C언어] c언어 입력한대로 막대 별찍기 (0) | 2021.11.16 |
---|---|
[C언어] c언어 소문자 대문자 변환, 대문자 소문자 변환 (0) | 2021.11.15 |
[C언어] C언어 enum 사용법 (열거형 상수 선언) (0) | 2021.09.26 |
[C언어] c언어 atoi함수, atof 함수 예제 (아스키코드 정수형 실수형 변환) (0) | 2021.09.26 |
[C언어] C언어를 통한 메모리 구조 이해, c언어 동작 순서 이해 (0) | 2021.09.24 |