mwultong Blog ... 프로그래밍 / 계산기

컴퓨터 엑셀 워드 포토샵 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Friday, May 04, 2007

C언어] 별표(*) 기호 의미, 뜻; Asterisk Pointer Operator 백설표;애스터리스크


C에서는, 같은 별표(*;백설표;애스터리스크) 문자라도 여러 의미로 사용됩니다.

(1) 우선 곱하기 연산자입니다. X 가 아닌 * 를 사용하여 곱하기를 합니다. 이것은 다 아실 것입니다.

(2) 포인터 변수를 선언할 때 별표를 사용합니다.

int i = 999;
int *cool = &i;


위에서 cool 이라는 변수는 앞에 별표가 있기에, 보통 변수가 아니라 "포인터 변수"입니다. 위의 경우 변수 i 의 주소를 cool에 저장하는 것입니다. 또는
int* cool = &i;
이렇게 별표를 앞쪽으로 붙여도 똑같습니다. (그리고 & 이것은 어떤 변수의 주소를 구하는 "주소 연산자"입니다.)



(3) 포인터 변수가 가리키는 값을 추출할 때 별표를 사용합니다. 가령
int i = 999;
int *cool = &i; // 여기의 *cool 과

printf("%d\n", *cool); // 여기의 *cool 은 다름

이런 소스에서 printf 속의 *cool 이것은 999 라는 값을 의미합니다. (2)번 별표와 (3)번 별표를 혼동하기 쉽기에 주의가 필요합니다.




좀더 자세한 예제는 여기에 있습니다: ▶▶ C언어] printf 함수에서 %p 의미. 변수 번지, 포인터 변수 주소 출력; Print Pointer Address




tag: cpp
C언어 | C/C++ (Visual C++)

0 Comments:

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Previous Posts
Monthly Archives
Top