숫자를 문자열로 변환하는 C 언어 방법: 1. ASCII 코드 연산, 원래 숫자에 "0x30"을 추가합니다. 구문은 "숫자 + 0x30"이며, 숫자에 해당하는 문자 ASCII 코드가 저장됩니다. itoa()를 사용하면 정수를 문자열로 변환할 수 있으며 구문은 "itoa(number1, string, number);"입니다. 3. sprintf()를 사용하면 지정된 요구 사항에 따라 콘텐츠 형식을 지정하고 포인터가 가리키는 문자열입니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, c99 버전, Dell G3 컴퓨터.
C 언어에서 숫자를 문자열로 변환하는 여러 가지 방법
방법 1. ASCII 코드 연산 : Number + 0x30
char 형식이 ASCII 코드 값에 저장되므로 숫자를 추가할 수 있습니다. ASCII 0의 코드는 48, 즉 0x30으로 숫자에 해당하는 문자 ASCII 코드를 저장합니다.
#include <stdio.h> int main() { char str1 = 'c'; // 随便初始化一下 str1 = 0x30 + 5; printf("str1: %c\n", str1); printf("str1: %d\n", str1); return 0; }
여기서 확장합니다. 문자 저장의 본질은 ASCII 코드이므로 uint8_t 또는 다른 유형의 변수/배열을 사용하여 문자를 저장하는 것이 가능합니다. 내 프로젝트에서는 u8을 저장용으로 사용하는데 장점은 데이터 구조가 8비트여야 하고 부호 없는 특성도 결정된다는 점이다.
방법 2, itoa() 사용
cstdlib 비표준 라이브러리의 기능입니다.
itoa(정수를 영숫자로 표현)는 정수를 문자열로 변환하는 함수입니다.
이 함수의 사용법은
char *itoa (int value, char *str, int base);
value는 원래 숫자입니다
str은 저장할 문자열 포인터입니다.
base는 지정된 숫자 base입니다
예:
#include <stdlib.h> #include <stdio.h> int main() { int number1 = 123456; int number2 = -123456; char string[16] = {0}; itoa(number1,string,10); printf("数字:%d 转换后的字符串为:%s\n",number1,string); itoa(number2,string,10); printf("数字:%d 转换后的字符串为:%s\n",number2,string); return 0; }
방법 3: sprintf() 함수
이 함수는 stdio 표준 라이브러리 함수로, 지정된 요구 사항에 따라 콘텐츠의 형식을 지정하고 포인터가 가리키는 문자열에 저장할 수 있습니다.
sprintf() 함수 선언.
int sprintf(char *str, const char *format, ...)
str - C 문자열을 저장하는 문자 배열에 대한 포인터입니다.
format -- 문자열 str에 쓸 텍스트가 포함된 문자열입니다. 여기에는 후속 추가 매개변수에 지정된 값으로 대체되고 필요에 따라 형식이 지정될 수 있는 포함된 형식 태그가 포함될 수 있습니다. 형식 태그 속성은 %[flags][width][.precision][length]specifier
예:
#include <stdio.h> #include <math.h> int main() { char str[80]; sprintf(str, "Pi 的值 = %f", M_PI); puts(str); return(0); }
【관련 권장사항: C 언어 비디오 튜토리얼, 프로그래밍 교육】
위 내용은 C 언어에서 숫자를 문자열로 변환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!