3.3.3. restrict

restrict 키워드는 다양한 개체 포인터 유형과 함수 매개변수 배열이 메모리의 중복 영역을 가리키지 않도록 해 주는 C99 기능입니다. 따라서 컴파일러의 최적화 작업이 별칭 지정 가능성 때문에 방지되지 않고 자유롭게 수행됩니다.

제한

C90 또는 C++에서 restrict 키워드를 사용하려면 --restrict 옵션을 지정해야 합니다.

키워드 __restrict__restrict__restrict의 동의어로 지원되며 --restrict 지정 여부에 상관없이 항상 사용할 수 있습니다.

예제

void copy_array(int n, int *restrict a, int *restrict b)
{
    while (n-- > 0)
        *a++ = *b++;
}

추가 참고

Copyright © 2007 ARM Limited. All rights reserved.ARM DUI 0348AK
Non-Confidential