stdio.h 내 puts 함수 구현을 직접 볼 수 있나요?
안녕하세요 널널한개발자님 강의 재밌게 보고 있는 1인 입니다ㅎㅎ
강사님께서 구현코드는 디버깅 과정에서 보여지지 않는다고 하셨는데, 볼 수 있는 방법이 있을까요? 모든 프로그래밍 언어의 기본이 되는 언어라고 배웠는데 실제구현을 볼 수 없다는 게 제 수준에서는 의아합니다. 찾아보니 소스파일 외의 구현코드를 찾기가 어렵고 챗지피티도 명쾌한 대답을 주지 못해서 질문 남깁니다. 여러번 질문했는데 항상 잘 답변해주셔서 감사드립니다~
답변 2
1
아니오. 그렇지 않습니다. 제가 언급한 CRL은 printf()나 scanf() 함수 같은 표준 라이브러리 함수가 구현된 실행 바이너리 DLL 파일(윈도우 기준)을 말한 것입니다. 참고하시기 바랍니다.
1
없습니다. MS사에서 C-Runtime library 코드를 공개하거나 라이브러리를 리버싱 해서 알아내는 것이 전부라 하겠습니다. 그러나 굳이 그럴 필요도 없이 Linux의 CRL 코드를 보는 방법도 있겠습니다. 어차피 큰 차이가 있지 않을 것이기 때문입니다.
그리고 C언어의 모든 구현 코드는 결국 기계어로 번역되어 실행됩니다. Python이나 JavaScript처럼 코드가 있어야 실행하는 구조가 아니기 때문입니다. 참고하시기 바랍니다.
0
아 정석적인 방도는 없는 거군요, 인터프리터 언어와 다른 점이 기계어로 실행된다는 특징이랑 연관되어있나보군요 여러모로 배웁니다. 그런데 CRL을 검색해보니 인증서 철회 관련 내용이 나오는데.. 혹시 .net 프레임워크의 런타임 언어 소스코드인 CLR을 말하셨던 걸까요? 용어가 낯설어 계속 질문해서 죄송하고 감사합니다!
scanf("%d\n") 의미
0
20
1
주소 연산자(&) 간접 지정자(*) 반대 개념
0
33
1
Virtual Memory, Memory, Memory mapping tables
0
51
1
샘플코드 출력 오류 발생 질문드립니다
0
63
2
값의 교환에 사용되는 변수의 위치.
0
88
2
메모리 비교에 관한 질문
0
81
2
문자열 Null
0
63
1
C, C++
0
88
2
문자열 입출력 코드 에러
0
60
2
선생님! 120화 2분 50초 질문입니다.
0
67
1
caller 가 메모리 할당 해제를 할 때의 문제점 질문
0
64
2
단축키 맞는지 여부 문의드립니다.
0
60
2
문자열을 사용하는 이중 포인터에 대하여 질문합니다
0
66
1
char 포인터 변수의 크기에 대하여 제가 이해한 것이 맞을까요
0
78
2
용어 설명 필요
0
57
2
stdin, stdout
0
71
2
필수 실습 (최댓값을 반환하는 함수)
0
93
2
아......ㅠㅠ
0
100
2
버퍼 내 엔터
0
72
1
2진수 뺄셈에서 carry-out
0
112
2
union 식별자는 실무에서 보통 어디에서 사용하나요?
0
80
2
필수실습문제 공부법 (진도 vs 복습)
0
104
2
예제파일 다운로드
0
79
2
Visial Studio Code 를 설치해서 사용해도 수업을 따라가는데 지장이 있나요?
0
120
3





