>백엔드 개발 >PHP 튜토리얼 >PHP에서 상수를 정의하는 두 가지 방법

PHP에서 상수를 정의하는 두 가지 방법

angryTom
angryTom원래의
2019-08-22 13:36:4512894검색

PHP에서 상수를 정의하는 두 가지 방법

"상수"의 넓은 개념은 '변하지 않는 수량'입니다(예: 컴퓨터가 컴퓨터를 사용할 때 프로그램에 의해 수정되지 않는 수량). 프로그램이 실행 중입니다. 각 특정 원의 반경 및 직경과 같은 특정 수량, 진공에서 빛의 속도; 다음은 PHP에서 상수를 정의하는 두 가지 방법입니다. .

추천 튜토리얼: PHP 비디오 튜토리얼

여기서는 pi를 사용합니다 예를 들어 보겠습니다.

첫 번째 방법: 매크로 정의 는 Pi를 기호로 정의하는 것입니다. 별칭, 컴파일 중에 Pi 값을 3.1415926으로 바꿉니다.

1.define은 매크로 정의이며 프로그램은 이를 전처리 단계에서 정의한 내용으로 대체합니다. 따라서 프로그램이 실행될 때 상수 테이블에는 정의로 정의된 상수가 없으며 시스템에서는 이에 대한 메모리를 할당하지 않습니다. const로 정의된 상수는 프로그램이 실행될 때 상수 테이블에 있으며 시스템은 이를 위해 메모리를 할당합니다.

2. 정의로 정의된 상수는 전처리 중에 직접 대체됩니다. 따라서 컴파일 타임에는 데이터 유형 검사를 수행할 수 없습니다. const로 정의된 상수는 오류를 방지하기 위해 컴파일 타임에 엄격한 유형 검사를 거칩니다.

3. 다음 정의와 같이 표현식을 정의할 때 "가장자리 효과"에 주의하세요. #define N 2+3 //예상 N 값은 5입니다. N을 이렇게 사용합니다. int a = N/2; //a의 값은 2.5일 것으로 예상했지만 실제로는 a의 값이 3.5입니다. 그 이유는 전처리 단계에서 컴파일러가 a = N/2를 a = 2+로 처리했기 때문입니다. 3/2; 이것은 매크로 정의 문자열 대체의 "가장자리 효과"이므로 다음과 같이 정의됩니다: #define N (2+3).

두 번째 방법은 PI를 변수로 정의하되 해당 값이 고정되어 있다고 컴파일러에 알리는 것입니다. , 만약 프로그램에서 해당 값을 수정하면 컴파일 중에 오류가 보고됩니다.

const로 정의된 상수는 두 가지 이유로 상수 변수라고 불립니다. const로 정의된 상수는 변수처럼 유형을 확인합니다. const는 어디에서나 상수를 정의할 수 있으며, 컴파일러는 메모리를 할당한다는 점을 제외하면 이를 변수와 유사하게 처리합니다. 장소가 다릅니다.

 결론적으로 #define 전처리 지침 대신 const를 사용하는 것이 좋습니다 (하지만 지금까지 본 것은 #define 더 사용하면 편리할까요? (고려 예정)

 1.const는 데이터 유형을 정의할 수 있으므로 유형 안전성이 향상됩니다. 예를 들어 위에서 상수 PI가 이중 유형

 2임을 지정할 수 있습니다. const는 변수이므로(여기서는 좀 어색하지만 실제로는 변경되지 않지만 이름은 상수라고 합니다.) 변수), 주소가 있고 응용 범위가 더 넓어집니다

 3. 문법도 더 잘 이해됩니다

符号常量 #define Pi 3.1415926f;
 
常值变量 const float pi 3.1415926f;

위 내용은 PHP에서 상수를 정의하는 두 가지 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.