__func__가 C99 표준입니다.
------------------------------------------------------ In simplexitate est opportunitas.--cppig1995
[낡배밀] 낡은 리눅스 배포판을 밀어내야 한다고 생각합니다.
Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.
컴파일러가 넣어주는
컴파일러가 넣어주는 겁니다. 컴파일 시점엔 알고 있잖아요 ^^

May the F/OSS be with you..
----------------------------
May the F/OSS be with you..
답변 감사합니다.
결국 프로그래밍으로는 불가능한 일이었군요.
어, 그런데, 함수
어, 그런데, 함수 이름 정도는 얻어올 수 있습니다. ^^ ;
디버그 정보를 이용하면 가능한데요, KLDP에서도 읽은 적이 있으니까 검색어를 잘 정해서 찾아보시고 덧글 달아주세요 ^^
----------------------------
May the F/OSS be with you..
결국 못 찾았습니다.
디버그 디버그정보 함수이름 함수이름취득 함수이름얻기 함수이름가져오기... 등등으로 구글찾기로 검색했는데요. 못찾았어요.
line directive
gcc manual 찾아보시면 line directive라고 나옵니다.
이것을 이용하면 __LINE__, __FUNCTION__으로 출력되는 내용을 임의로 변경할 수 있습니다.
__func__가 C99
__func__가 C99 표준입니다.
------------------------------------------------------
In simplexitate est opportunitas. --cppig1995
[낡배밀] 낡은 리눅스 배포판을 밀어내야 한다고 생각합니다.
Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.
좀 더 정확히 말하자면...
__FILE__, __LINE__ 등은 전처리기가 넣어주는 것이고, __FUNCTION__ 는 전처리기 또는 컴파일러, __func__ 는 컴파일러가 넣어주는 것이지요.
좀 더 정확히 말하자면...
__FILE__, __LINE__ 은 전처리기가 처리해 주고, __func__ 는 컴파일러가 처리해 주는 것이지요. __FUNCTION__ 은 컴파일러마다 다른 것 같구요.
댓글 달기