이 기능 할당은 어떻게 작동합니까?

존 Vn

내가 가지고있는 대학 책에서 C 코드를 공부하고 있었는데 (이 책의 주제는 Linux 프로그래밍 임) 이해가 안되는 코드 줄을 발견했습니다. 조사를 좀 해봤지만 인터넷에서 아무것도 찾지 못했습니다. 누군가 나에게이 코드를 설명 할 수 있습니까?

환경 변수가 무엇인지 알고 있지만 이해하지 못하는 부분은이 int (*det)(), det()함수가 작동하는 방식입니다. 제목이 정확하지 않다면 죄송합니다. 주제를 더 잘 설명하는 방법을 몰랐습니다.

#include<stdio.h>

int main(){
    int (*det)();
    det = getenv("foo");      
    det();
    return 0;
}

*** 답장을 보내 주셔서 감사합니다.이 프로그램을 작동시킬 수있는 방법이 있습니까?

나는

누군가 이미 지적했듯이

det = getenv("foo"); 

그다지 말이 안되며 컴파일러가 충분히 똑똑해서 빠져 나가지 않기를 바랍니다. 다음은 그 책에서 기대했던 내용 일 수 있습니다.

#include <stdio.h>
#include <stdlib.h>

extern char* getenv(const char*);
/* The above statement is not mandatory but would make the code more 
 * readable. The keyword "extern" here implies that the function is 
 * is defined elsewhere.
 */

int main(void)
{
    char* (*det)(const char*) = getenv;
    printf("PATH env variable contains : %s\n", (*det)("PATH"));
    /* Replace path with your own environment variable */
    printf("Press any key to continue..\n");
    getchar();
    return 0;
} 

여기에 몇 가지 내용을 인쇄하고 있습니다. 필요에 맞게 사용법을 변경하십시오.

참고 문헌

여기에 getenv () 프로토 타입이 있습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Express :이 기능은 어떻게 작동합니까?

분류에서Dev

이 기능은 어떻게 작동합니까? (BST 재귀)

분류에서Dev

이 기능은 어떻게 작동합니까? char * getname (); C ++

분류에서Dev

이 기능은 정확히 어떻게 작동합니까?

분류에서Dev

반환이없는 기능-이 기능은 어떻게 작동합니까?

분류에서Dev

이 기능은 무엇을합니까? 어떻게 작동합니까?

분류에서Dev

f1 = const 맵 뒤집기. 이 기능은 어떻게 작동합니까?

분류에서Dev

이 리졸버 확장 기능은 어떻게 작동합니까?

분류에서Dev

각도 $ watch 기능은 슬라이더와 어떻게 작동합니까?

분류에서Dev

이 캐스팅 할당은 어떻게 작동합니까?

분류에서Dev

이 특정 명령의 기능은 무엇입니까? 어떻게 작동합니까?

분류에서Dev

std :: set 비교기 기능은 어떻게 작동합니까?

분류에서Dev

이 평가 기능은 Connect 4 게임에서 어떻게 작동합니까? (자바)

분류에서Dev

이 평가 기능은 Connect 4 게임에서 어떻게 작동합니까? (자바)

분류에서Dev

이 확장 기능은 왜 / 어떻게 작동합니까? 'with'없이 부르는 방법?

분류에서Dev

이 메모장 코드의 기능은 무엇이며 어떻게 작동합니까?

분류에서Dev

이 형식의 변수 할당은 어떻게 작동합니까?

분류에서Dev

Rails의 upsert 기능은 어떻게 작동합니까?

분류에서Dev

Gnome Metacity, 확장 기능은 어떻게 작동합니까?

분류에서Dev

필터 기능은 어떻게 작동합니까?

분류에서Dev

필터 기능은 어떻게 작동합니까?

분류에서Dev

바인드 기능은 언제 어떻게 작동합니까?

분류에서Dev

CloudFlare의 '제거'기능은 어떻게 작동합니까?

분류에서Dev

theano의 스캔 기능은 어떻게 작동합니까?

분류에서Dev

kdb- 'where'기능은 어떻게 작동합니까?

분류에서Dev

Haskell의 'randoms'기능은 어떻게 작동합니까?

분류에서Dev

분할 기능이 이상하게 작동합니까?

분류에서Dev

Rebol2 / View 질문 : Rebol2의 레이아웃 기능은 어떻게 작동합니까?

분류에서Dev

암호화 기능이있는 Samsung SSD 840/850 Pro : 휴대 성은 어떻게 작동합니까?

Related 관련 기사

  1. 1

    Express :이 기능은 어떻게 작동합니까?

  2. 2

    이 기능은 어떻게 작동합니까? (BST 재귀)

  3. 3

    이 기능은 어떻게 작동합니까? char * getname (); C ++

  4. 4

    이 기능은 정확히 어떻게 작동합니까?

  5. 5

    반환이없는 기능-이 기능은 어떻게 작동합니까?

  6. 6

    이 기능은 무엇을합니까? 어떻게 작동합니까?

  7. 7

    f1 = const 맵 뒤집기. 이 기능은 어떻게 작동합니까?

  8. 8

    이 리졸버 확장 기능은 어떻게 작동합니까?

  9. 9

    각도 $ watch 기능은 슬라이더와 어떻게 작동합니까?

  10. 10

    이 캐스팅 할당은 어떻게 작동합니까?

  11. 11

    이 특정 명령의 기능은 무엇입니까? 어떻게 작동합니까?

  12. 12

    std :: set 비교기 기능은 어떻게 작동합니까?

  13. 13

    이 평가 기능은 Connect 4 게임에서 어떻게 작동합니까? (자바)

  14. 14

    이 평가 기능은 Connect 4 게임에서 어떻게 작동합니까? (자바)

  15. 15

    이 확장 기능은 왜 / 어떻게 작동합니까? 'with'없이 부르는 방법?

  16. 16

    이 메모장 코드의 기능은 무엇이며 어떻게 작동합니까?

  17. 17

    이 형식의 변수 할당은 어떻게 작동합니까?

  18. 18

    Rails의 upsert 기능은 어떻게 작동합니까?

  19. 19

    Gnome Metacity, 확장 기능은 어떻게 작동합니까?

  20. 20

    필터 기능은 어떻게 작동합니까?

  21. 21

    필터 기능은 어떻게 작동합니까?

  22. 22

    바인드 기능은 언제 어떻게 작동합니까?

  23. 23

    CloudFlare의 '제거'기능은 어떻게 작동합니까?

  24. 24

    theano의 스캔 기능은 어떻게 작동합니까?

  25. 25

    kdb- 'where'기능은 어떻게 작동합니까?

  26. 26

    Haskell의 'randoms'기능은 어떻게 작동합니까?

  27. 27

    분할 기능이 이상하게 작동합니까?

  28. 28

    Rebol2 / View 질문 : Rebol2의 레이아웃 기능은 어떻게 작동합니까?

  29. 29

    암호화 기능이있는 Samsung SSD 840/850 Pro : 휴대 성은 어떻게 작동합니까?

뜨겁다태그

보관