define문에서 @의 역할이 궁금합니다...

ksiwing22의 이미지

#define __IO_REG32(NAME, ADDRESS, ATTRIBUTE) \
volatile __no_init ATTRIBUTE unsigned long NAME @ ADDRESS

stm32관련 입출력 헤더파일 내부를 보니 define문에서 @의 역할을 구글링해도 관련 자료가 없는듯합니다...

NAME 과 ADDRESS 사이에 @가 이해가 가질 않네요. 고수님들 도와주세요

hys545의 이미지

http://stackoverflow.com/questions/9688447/extern-array-of-function-pointers-in-c-on-a-fixed-memory-address
보니까

The "name @ address" syntax is a nonstandard (but somewhat common) trick to do, in the compiler, what @Chris Dodd suggests doing in the linker. The linker method is of course also not in the C standards, but at least leaves your C code looking nice.
이 문법은 컴파일러에서 사용하는 비 표준문법이라고 하네여.

즐린