티스토리 뷰
리눅스 시스템프로그래밍을 공부하다가
stat 함수에서 매개변수를 restrict라는 한정자를 사용해서 구현해놓았길래 궁금해졌고,
그에따라 좀 더 조사를 해보았다.
아래는 Wiki에서 말하고 있는 restrict이다.
In the C programming language, as of the C99 standard, restrict
is a keyword that can be used in pointer declarations. The restrict
keyword is a declaration of intent given by the programmer to the compiler. It says that for the lifetime of the pointer, only it or a value directly derived from it (such as pointer + 1
) will be used to access the object to which it points. This limits the effects of pointer aliasing, aiding caching optimizations. If the declaration of intent is not followed and the object is accessed by an independent pointer, this will result in undefined behavior. The existence and use of the restrict
keyword in C allows non-obtuse C to achieve the same performance as the same program written in FORTRAN.[1]
요약하면,
C99부터 포인터를 선언할 때, restrict라는 것을 사용할 수 있게 되었다. restrict키워드를 사용하면, 컴파일러에게 더 많은 최적화를 수행해도 된다라고 말해주기 위해 붙여주는 것이다.
'Study > Language >' 카테고리의 다른 글
GDG SSU - Summer C Study 20130705(2일차) (0) | 2013.07.13 |
---|---|
GDG SSU - Summer C Study 20130703(1일차) (0) | 2013.07.13 |
Eclipse 설치 후 내가 주로 하는 일들 (0) | 2013.03.22 |
내가 주로 쓰는 vim 설정 (0) | 2013.03.21 |
자바의 추상클래스(Abstract class)와 인터페이스(interface class) (1) | 2012.10.09 |
- Total
- Today
- Yesterday
- 리눅스 커널 2.6
- 안드로이드폰
- 핸즈온머신러닝
- AndroidWear
- 안드로이드
- Linux
- 리눅스2.6
- 리눅스 커널 2.6 구조와 원리
- 숭실대
- jaeseokyoon
- 하쭈서쭈
- 해커톤
- 그래비트랙스
- 창조경제혁신센터
- 윤재석
- yjaeseok
- 리눅스
- Jake Yoon
- 창의과학교구
- 릴레이대회본선
- 서버개발자
- watchface
- 소설네트워크2
- GDG
- gdgssu
- WatchFaceHack
- Developing on AWS
- GDG SSU
- jakeyoon
- gdg watchfacehack
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |