inline 에 대해서..

jqka1의 이미지

안녕하세요? 커널소스보다 보니 두가지 경우가 있더군요..

inline static int func(void)

static inline int func(void)

의 차이점이 뭔가요?

그리고 좀 다른 질문이지만..

x^2 의 의미가 뭘까요?
예를들어.. x<<2 이면 x 곱하기 4이다 라는것처럼.. 특별한 의미가 있을까요?

가르쳐 주시면 감사하겠읍니다.. ^^

cdpark의 이미지

^는 bit-XOR 연산자입니다.

<<는 bit-shift지, 곱하기를 위한 것이 아닙니다. :(

(x<<2 나 x*4나 성능은 같습니다. 읽기 쉽게 코드를 짜는게 중요합니다.)

aqwerf의 이미지

jqka1 wrote:
안녕하세요? 커널소스보다 보니 두가지 경우가 있더군요..
inline static int func(void)

static inline int func(void)
의 차이점이 뭔가요?

없습니다. 각자 스타일이겠죠.
c 에서는 type specifier, qualifier, stroage class speicfier 의 순서는 어떻게 되든 상관 없습니다.