【 C 입 문 】 9 、 매크로 정의

2632 단어 c
Summary
1) C 이 므 로 함수 내부 에서 실제 인삼 의 값 을 바 꿀 수 없습니다.
2) 함 수 는 일종 의 수단 이다
3) 매크로 는 C 언어 방식 으로 함수 에 대한 보충 이다.함수 와 매크로 의 관 계 는 생활 속 과 유사 한 관계 로 특정한 장면 에 만 사용 된다.대부분의 경우 함 수 를 우선적으로 고려한다.
4) 매크로 는 함수 가 없고 함수 호출 은 스 택 에서 활동 기록 을 유지 해 야 합 니 다.매크로 는 간단 한 텍스트 교체 일 뿐 이 므 로 팽창 하고 함 수 는 같은 함수 체 만 사용 합 니 다.매크로 교 체 는 유형 을 검사 하지 않 습 니 다. 매크로 와 연산 자 를 결합 하면 예상 치 못 한 오류 가 발생 할 수 있 습 니 다. 함수 가 진행 되 고 이의 성 이 나타 나 지 않 습 니 다.
5) 컴 파 일 러 구성 안내:
  • : 모든 \ # 시작 문 구 를 처리 합 니 다 (복사 붙 여 넣 기 교체 -- > 중간 파일. i)
  • : C 프로그램 을 바 이 너 리 프로그램 으로 번역 합 니 다 (중간 파일. i -- > 어 셈 블 리 파일. s -- > 바 이 너 리 파일. o)
  • : 바 이 너 리 프로그램 을 실행 가능 한 프로그램 (o -- >. out)
  • 으로 조합 합 니 다.
    매크로 정의
    질문: 다음 코드 는 무엇 을 출력 합 니까?왜?
    void swap(int a, int b)
    {
        int t = a;
        a = b;
        b = t;
    }
    
    int main()
    {
        int x = 1;
        int y = 2;
        
        swap(x, y);
        
        x = ?
        y = ?
    }

    이상 코드 출력 은 x = 1, y = 2 입 니 다.비록 우리 가 교환 을 했 지만 x 와 y 의 값 은 여전히 변 하지 않 았 다. 그 이 유 는 모든 함수 에서 실제 인삼 의 값 을 직접 바 꿀 수 없 기 때문이다.
    함수 재 이해: 함 수 는 일종 의 수단 이다.
  • 특정한 기능 을 실현 하 는 코드 필름 을 봉인 (하나의 전체 로 간주)
  • 이 코드 세 션 에 적당 한 이름 (이름 으로 코드 사용)
  • 매개 변수 정의 (코드 세 션 처리 해 야 할 문제 정의)
  • C 언어의 매크로 는 함수 '결함' 에 대한 것 입 니 다
  • 매크로 는 C 언어 에서 코드 를 재 활용 하 는 보충 방식
  • 이다.
  • 매크로 정의 문법: #define MACRO(param) code_segment
  • 매크로 사용 문법: MACRO(num);
    #define ADD(a, b) a + b
    
    int z = ADD(1, 2);
  • 매크로 와 함수 의 차이:
  • 매크로 는 함수 가 아니 라 함수 호출 과정 이 없습니다 (스 택 에서 함수 호출 기록 을 유지 할 필요 가 없습니다).함수 호출 은 먼저 매개 변수 값 을 전달 한 다음 에 실행 함수 체 를 뛰 어 넘 은 다음 에 되 돌려 줍 니 다
  • “ ” 그리고 매개 변 수 를 교체 합 니 다
  • 같은 함 수 는 몇 번 을 호출 하 든 함수 체 코드 만 있 습 니 다.같은 매크로, “ ”
  • 컴 파일 러 구성 안내:
  • : 모든 \ # 시작 문 구 를 처리 합 니 다 (복사 붙 여 넣 기 교체 -- > 중간 파일. i)
  • : C 프로그램 을 바 이 너 리 프로그램 으로 번역 합 니 다 (중간 파일. i -- > 어 셈 블 리 파일. s -- > 바 이 너 리 파일. o)
  • : 바 이 너 리 프로그램 을 실행 가능 한 프로그램 (o -- >. out)
  • 으로 조합 합 니 다.
    매크로 상수 재 론: \ # define NAME value
  • 예비 처리 모듈 은 코드 에 나타 난 NAME 식별 자 모든 텍스트 를 value
  • 로 대체 합 니 다.
  • 따라서 매크로 상수 가 본질 적 으로 글자 의 양 과 같다 (진정한 의미 의 상수)
  • 본 고 는 '디 태 소프트웨어 대학' 탕 졸 린 선생님 의 에서 요약 한 것 이다.만약 틀린 곳 이 있 으 면 지적 하여 바로잡아 주시 기 바 랍 니 다.

    좋은 웹페이지 즐겨찾기