발아현미

  • 홈
  • 태그
  • 방명록

2025/04/09 1

C / 함수의 인자 평가 순서

- 함수의 인자 평가는 순서가 없다.어떤 함수의 인자가 연속적으로 나열되었을 땐, 컴파일러가 값을 처리하는 순서가 존재하지 않는다.#include int main() { int a[3] = { 1, 2, 3 }; int* ptr = a; printf("%d, %d, %d\n", *ptr++, *ptr++, *ptr++); return 0;} 위 코드는 printf에서 *ptr++을 사용하여 a배열의 원소를 순차적으로 나열하는 로직을 지녔다. 언뜻 보기에는 정상적으로 1, 2, 3이 출력될 것으로 보이지만... 결과는 아래와 같다.  이유는, C 언어에서 함수 인자의 평가 순서는 정해져 있지 않기 때문이다. printf에서 한 줄로 나열된 3개의 *ptr++ 중 어느 것부터 실행하여 값을 반환할 지 정해..

C 2025.04.09
이전
1
다음
더보기
프로필사진

발아현미

발아현미

  • 분류 전체보기 (8)
    • C++ (2)
    • C (6)

Tag

c, C++, 포인터,

최근글과 인기글

  • 최근글
  • 인기글

최근댓글

공지사항

페이스북 트위터 플러그인

  • Facebook
  • Twitter

Archives

Calendar

«   2025/04   »
일 월 화 수 목 금 토
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

방문자수Total

  • Today :
  • Yesterday :

Copyright © Kakao Corp. All rights reserved.

티스토리툴바