C와 C의 함수 매개변수: 'const int' 대 'int const'
C와 C의 두 가지 유사한 함수 매개변수 선언 'const int'와 'int const'입니다. 동일해 보이지만 둘 사이에는 미묘한 차이가 있습니다.
C의 Const 선언
C에서 'const int' 선언은 다음을 의미합니다. 매개변수로 전달된 변수는 상수입니다. 즉, 해당 값은 함수 내에서 수정될 수 없습니다. 그러나 이 매개변수에 인수로 전달되는 값은 상수이거나 변수일 수 있습니다.
예:
<code class="c">int testfunc1 (const int a) { // a is constant within the function, but the argument can be variable. }</code>
Const 선언 C
C에서 'int const'는 C와 동일한 규칙을 따르지만 'const int'에는 추가 해석이 있습니다. 이는 또한 변수가 함수 내에서 수정될 수 없는 상수 값으로 초기화된다는 것을 의미합니다.
예:
<code class="cpp">int testfunc2(int const a) { // Both a and the argument must be constants. }</code>
Reading Trick for 선언
차이점을 더 잘 이해하려면 선언을 거꾸로 읽는 것이 유용한 방법입니다.
의미
두 선언 모두 전달된 값이 함수 내에서 수정되었습니다. 그러나 C의 초기화 요구 사항('const int')은 추가 제약 조건을 추가합니다.
예:
<code class="cpp">const char *s; // s is a pointer to a char that is constant char *const t = &c; // t is a constant pointer to a char</code>
이 경우 ' s'는 변경할 수 있지만(포인터이므로) 't' 값은 변경할 수 없습니다.
위 내용은 \'const int\' 대 \'int const\': C와 C의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!