내장 함수
SAL의 식은 부작용이 없는 식인 경우 C/C++ 식일 수 있습니다. 예를 들어 ++, --, 및 함수 호출은 모두 이 컨텍스트에서 부작용이 있습니다. 그러나 SAL은 일부 함수와 유사한 개체와 SAL 식에 사용할 수 있는 일부 예약된 기호를 제공합니다. 이를 내장 함수라고 합니다.
범용
다음 내장 함수 주석은 SAL에 대한 일반 유틸리티를 제공합니다.
주석 | 설명 |
---|---|
_Curr_ |
현재 주석을 달고 있는 개체의 동의어입니다. 주석을 _At_ 사용 _Curr_ 중인 경우 첫 번째 매개 변수 _At_ 와 같습니다. 그렇지 않으면 주석이 어휘적으로 연결된 매개 변수 또는 전체 함수/반환 값입니다. |
_Inexpressible_(expr) |
주석 식을 사용하여 표현하기에는 버퍼의 크기가 너무 복잡한 상황을 나타냅니다. 예를 들어 입력 데이터 집합을 검색한 다음 선택한 멤버를 계산하여 계산되는 경우입니다. |
_Nullterm_length_(param) |
param 는 null 종결자를 포함하지 않고 버퍼의 요소 수입니다. 비 집계, 비 void 형식의 버퍼에 적용할 수 있습니다. |
_Old_(expr) |
사전 조건으로 _Old_ 평가되면 입력 값을 expr 반환합니다. 사후 조건에서 평가되는 경우 사전 조건에서 평가되었을 때와 같이 값을 expr 반환합니다. |
_Param_(n) |
함수에 n 대한 th 매개 변수로, 1에서 1로 n 계산되며 n 리터럴 정수 상수입니다. 매개 변수의 이름이 지정되면 이 주석은 이름으로 매개 변수에 액세스하는 것과 동일합니다. 참고:n 줄임표로 정의된 위치 매개 변수를 참조하거나 이름이 사용되지 않는 함수 프로토타입에서 사용할 수 있습니다. |
return |
SAL 식에서 C/C++ 예약된 키워드(keyword) return 사용하여 함수의 반환 값을 나타낼 수 있습니다. 이 값은 사후 상태에서만 사용할 수 있습니다. 사전 상태에서 사용하는 구문 오류입니다. |
특정 문자열
다음 내장 함수 주석을 사용하면 문자열을 조작할 수 있습니다. 이러한 네 가지 함수는 모두 null 종결자 앞에 있는 형식의 요소 수를 반환하는 동일한 용도로 사용됩니다. 차이점은 참조되는 요소의 데이터 종류입니다. 문자로 구성되지 않은 null로 끝나는 버퍼의 길이를 지정하려면 이전 섹션의 주석을 사용합니다 _Nullterm_length_(param)
.
주석 | 설명 |
---|---|
_String_length_(param) |
param 는 null 종결자를 포함하지 않고 문자열의 요소 수입니다. 이 주석은 문자열 형식에 대해 예약되어 있습니다. |
strlen(param) |
param 는 null 종결자를 포함하지 않고 문자열의 요소 수입니다. 이 주석은 문자 배열에 사용하도록 예약되어 있으며 C 런타임 함수 strlen()과 유사합니다. |
wcslen(param) |
param 은 null 종결자를 포함할 수 없는 문자열의 요소 수입니다. 이 주석은 와이드 문자 배열에서 사용하도록 예약되어 있으며 C 런타임 함수 wcslen()과 유사합니다. |
참고 항목
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기