2010-02-09 2 views
6

정수를 문자열로 변환하는 방법을 찾고있었습니다 (적어도 Windows & 리눅스와 x86 및 x86_64 사이에서 이식 가능함). 은 atoi(1)과 같은 표준이긴하지만.정수를 문자열로 이식하는 방법은 무엇입니까?

itoa 함수는 표준 C 프로그래밍 언어에 널리 비표준 확장 :

그러나

은 내가 위키 백과 항목에 다음을 읽어보십시오. C 언어 표준에 정의되어 있지 않으므로 이식 할 수 없습니다. 그러나 컴파일러는 표준 라이브러리 함수 atoi와 논리적으로 대응하기 때문에 비 순응 모드에서 헤더를 통해 제공합니다.

휴대용 방식으로 처리 할 수있는 방법이 있는지 알고 싶습니다. 내가 직접 함수를 작성해야 할 경우를 대비해서 어떤 것을주의해야합니까?

+0

itoa는 휴대용이 아니지만, 문제가 생길지는 의심 스럽습니다. 그렇게하면 작성하기가 매우 쉽습니다. –

+0

당신은 항상 당신 자신을 구현할 수 있습니다 : P –

답변

1

대부분의 경우 printf ("% d")를 사용합니다.

http://en.wikipedia.org/wiki/Printf

당신이 버퍼에 필요하지만, 얼마나 자주 당신은 문자열로 변환 않으며, 파일 또는 출력 장치에 기록하지 않을 경우 당신은 sprintf를 사용할 수 있습니까?

0

이 작업을 자주 수행하지 않는 경우 메모리에 숫자를 쓰고 결과를 분석하고 인코딩 유형을 저장하는 런타임 라이브러리 루틴은 어떻습니까? 그때부터 "인코딩 유형"을 켜서 사용할 변환 루틴을 선택하기 만하면됩니다.

관련 문제