프로그래밍을 하다보면 입력받은 문자열로 표현된 숫자의 값을 해당 정수나 실수의 데이터로 변환해야하는 경우가 생긴다.
설명할 세가지 함수들은 헤더파일 <stdlib.h>에 선언된 함수이며, 이 함수들은 문자열"123"을 정수 123으로 또는 문자열 "12.34"를 실수 12.34로 바꿀때 쓰인다.
int atoi(문자열 또는 변수); - 문자열의 내용을 int형으로 변환
long atol(문자열 또는 변수); - 문자열의 내용을 long형으로 변환
double atof(문자열 또는 변수); - 문자열의 내용을 double형으로 변환
아래의 코드를 작성하여 테스트 하여보자.
#include<stdio.h>
#include<stdlib.h>
#pragma warning(disable:4996) // scanf 보안 경고 제거용
int main(void) {
char str[20];
/*** 정수로 변환 ***/
printf("정수 입력: ");
scanf("%s", str);
printf("%d \n", atoi(str));
/*** 실수로 변환 ***/
printf("실수 입력: ");
scanf("%s", str);
printf("%g \n", atof(str));
return 0;
}
위의 코드는 사용자로부터 문자열로 입력받아 정수와 실수로 출력하는 것이다.
'C' 카테고리의 다른 글
C언어 구조체 변수의 초기화 (0) | 2014.08.17 |
---|---|
C언어 구조체의 정의와 구조체 변수 선언과 사용법 (0) | 2014.08.11 |
C언어 문자열 비교하기(strcmp, strncmp) (0) | 2014.08.09 |
C언어 문자열 복사하여 덧붙이기 (strcat, strncat) (0) | 2014.08.07 |
C언어 문자열 복사하기(strcpy, strncpy) (2) | 2014.08.04 |