오늘은 PHP에서 printf() 함수의 형식 사용에 대한 심층 분석을 가져왔습니다. 편집자님이 꽤 좋다고 생각하셔서 지금 공유하고 모두에게 참고용으로 드리고자 합니다. 편집자를 따라가서 살펴보겠습니다. 모두에게 도움이 되기를 바랍니다.
printf() 함수의 장점은 출력 형식을 지정할 수 있다는 것입니다!
printf 형식 제어의 전체 형식:
% - 0 m.n l 또는 h 형식 문자
구성하는 항목 형식 설명은 다음과 같습니다. 참고:
①%: 형식 설명을 나타내는 시작 기호는 필수입니다.
②-: -이면 왼쪽 정렬 출력을 의미하고, 생략하면 오른쪽 정렬 출력을 의미합니다.
③0: 0이 있으면 지정된 빈칸을 0으로 채운다는 뜻이고, 생략되면 지정된 빈칸을 채우지 않는다는 뜻이다.
4m.n: m은 필드 너비, 즉 출력 장치에서 해당 출력 항목이 차지하는 문자 수를 나타냅니다. N은 정밀도를 나타냅니다. 출력 실수를 설명하는 데 사용되는 소수 자릿수입니다. n이 지정되면 암시적 정밀도는 n=6자리입니다.
⑤l 또는 h: l은 정수형의 경우 long 유형을 나타내고 실수형의 경우 double 유형을 나타냅니다. h는 정수 유형의 형식 문자를 짧은 유형으로 수정하는 데 사용됩니다.
—————————————————————————————————————————————— ————————————
형식 문자
형식 문자는 출력 항목의 데이터 유형 및 출력 형식을 지정하는 데 사용됩니다.
①d 형식: 십진 정수를 출력하는 데 사용됩니다. 여러 가지 사용법이 있습니다:
%d: 정수 데이터의 실제 길이에 따라 출력합니다.
%md: m은 지정된 출력 필드의 너비입니다. 데이터의 자릿수가 m보다 작으면 왼쪽 끝에 공백이 추가됩니다. m보다 크면 실제 자릿수가 출력됩니다.
%ld: 긴 정수 데이터를 출력합니다.
②o 형식: 정수를 부호 없는 8진수 형식으로 출력합니다. 긴 정수는 "%lo" 형식으로 출력될 수 있습니다. "%mo" 형식으로 출력할 필드 너비를 지정할 수도 있습니다.
예:
main() { int a = -1; printf("%d, %o", a, a); }
실행 결과: -1,177777
프로그램 분석: 메모리 단위(보완 형식으로 저장됨)의 -1은 (1111111111111111)2, 8진수로 변환하면 (177777)8입니다.
3x 형식: 부호 없는 16진수 형식으로 정수를 출력합니다. 긴 정수는 "%lx" 형식으로 출력될 수 있습니다. "%mx" 형식으로 출력할 필드 너비를 지정할 수도 있습니다.
4u 형식: 부호 없는 십진수 형식으로 정수를 출력합니다. 긴 정수는 "%lu" 형식으로 출력될 수 있습니다. "%mu" 형식으로 출력할 필드 너비를 지정할 수도 있습니다.
⑤c 형식: 한 문자를 출력합니다.
⑥s 형식: 문자열을 출력하는 데 사용됩니다. 여러 가지 사용법이 있습니다
%s: 예: printf("%s", "CHINA")는 "CHINA" 문자열(큰따옴표 제외)을 출력합니다.
%ms: 출력 문자열이 m개의 열을 차지합니다. 문자열 자체의 길이가 m보다 크면 m 제한을 초과하여 모든 문자열이 출력됩니다. 문자열 길이가 m보다 작으면 공백이 채워집니다.
%-ms: m 열 범위 내에서 문자열 길이가 m 미만인 경우 문자열이 왼쪽으로 이동하고 오른쪽으로 공백이 채워집니다.
%m.ns: 출력은 m개 열을 차지하지만 문자열 왼쪽 끝에서 n개 문자만 사용합니다. 이 n개 문자는 m 열의 오른쪽에 출력되고 왼쪽에는 공백이 채워집니다.
%-m.ns: 여기서 m과 n은 위와 같은 의미를 가지며 m열 범위의 왼쪽에는 n자가 출력되고 오른쪽에는 공백이 채워집니다. n>m이면 자동으로 n값을 취한다. 즉, n개의 문자가 정상적으로 출력되는 것이 보장된다.
7f 형식: 실수(단정밀도 및 배정밀도 포함)를 소수 형식으로 출력하는 데 사용됩니다. 여러 가지 사용법이 있습니다:
%f: 너비가 지정되지 않고 모든 정수 부분이 출력되며 소수점 6자리가 출력됩니다.
%m.nf: 출력은 총 m개 열을 차지하며, 값 너비가 m보다 작으면 왼쪽에 공백이 채워집니다.
%-m.nf: 출력은 총 n개 열을 차지하며, 값 너비가 m보다 작으면 오른쪽 끝에 공백이 채워집니다.
⑧e 형식: 실수를 지수 형식으로 출력합니다. 다음 형식을 사용할 수 있습니다.
%e: 숫자 부분(가수라고도 함)은 십진수 6자리를 출력하고 지수 부분은 5자리 또는 4자리를 차지합니다.
%m.ne 및 %-m.ne: m, n 및 "-" 문자의 의미는 이전과 동일합니다. 여기서 n은 데이터의 디지털 부분의 소수점 이하 자릿수를 의미하고, m은 전체 출력 데이터의 폭을 의미한다.
9g 형식: f 형식이나 e 형식 중 더 짧은 형식을 자동으로 선택하여 출력하고, 의미 없는 0을 출력하지 않습니다.
—————————————————————————————————————————————— ————————————
printf 함수에 대한 추가 설명:
문자 "%"를 출력하려면 다음과 같이 "형식 제어" 문자열에 두 개의 연속 %를 사용해야 합니다.
printf("%f%%", 1.0/3);
출력 0.333333%.
—————————————————————————————————————————————— ————————————
단정밀도 숫자의 경우 %f를 사용합니다. 형식 문자가 출력되면 처음 7자리만 유효한 숫자이고 소수점 이하 6자리가 있습니다.
배정밀도 숫자의 경우 %lf 형식 문자를 사용하여 출력할 때 처음 16자리는 유효 숫자이고 소수점 이하 6자리가 있습니다.
관련 추천:
PHP에서 세 가지 함수 var_dump, var_export 및 print_r의 차이점은 무엇입니까?
디버깅 중 PHP에서 echo print() print_r() var_dump()의 차이점에 대한 자세한 소개
위 내용은 PHP의 printf() 함수 형식에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!