코딩하는 몽구리

[C언어]숫자 형식의 문자열 처리 본문

C

[C언어]숫자 형식의 문자열 처리

코딩구리 2024. 4. 22. 10:28

1. 숫자 형식의 문자열을 처리하는 함수 만들기

숫자 형태로 구성된 문자열을 정수로 바꾸는 함수를 구성해보도록 하겠습니다. 

#include <stdio.h>
int ArrayToInteger(char string[])
{
	int count = 0, num = 0;
	while (string[count] != 0)
	{
		// 반복할 때마다 이전 값에 10을 곱해서 자릿수를 증가시킴
		num = num * 10 + string[count] - '0';
		count++;
	}
	return num;
}

void main() 
{
	int first_num, second_num;
	char first_string[16], second_string[16];

	printf("input first number : ");
	gets(first_string);  // 첫 번째 문자열을 입력받음
	printf("input seconde number : ");
	gets(second_string); // 두 번째 문자열을 입력받음

	first_num = ArrayToInteger(first_string);  
	second_num = ArrayToInteger(second_string);
	// 정수로 변환된 두 수를 합산한 결과 값을 출력함
	printf("%d + %d = %d\n", first_num, second_num, first_num + second_num);
}

 

2. atoi 함수를 사용하여 문자열을 정수로 변환

#include <stdio.h>
#include <stdlib.h>

void main() 
{
	int first_num, second_num;
	char first_string[16], second_string[16];

	printf("input first number : ");
	gets(first_string);  // 첫 번째 문자열을 입력받음
	printf("input seconde number : ");
	gets(second_string); // 두 번째 문자열을 입력받음

	first_num = atoi(first_string); // 문자열 -> 정수
	second_num = atoi(second_string); // 문자열 -> 정수

	// 정수로 변환된 두 수를 합산한 결과 값을 출력함
	printf("%d + %d = %d\n", first_num, second_num, first_num + second_num);
}

atoi 함수를 활용하면 따로 함수를 정의하지 않고 문자열을 정수로 변환할 수 있습니다. 

'C' 카테고리의 다른 글

[C언어] 문자열 함수 정리  (0) 2024.04.17