C/C++ 런타임 및 표준 라이브러리는 어떤 언어인지 항상 궁금해합니다. 처음에는 캐주얼 C/C++ 언어라고 생각했지만 컴퓨터와의 대화를 통해 C/C++만으로는 충분하지 않습니다. 따라서 어셈블리 언어 일 수도 있습니다. C/C++ 또는 asm 언어 중 하나 인 경우 소스 코드가 실제로 돌아 다니는 것을 보지 않는 이유는 무엇입니까? 또는 어쩌면 나는 스킬 검색에 부족합니다 ...C 및 C++ 표준 라이브러리는 어떤 언어로 쓰여 있습니까? 그들의 소스 코드는 어디에 있습니까?
답변
이들은 일반적으로 호스트 언어로 작성되어 운영 체제 API와 상호 운용되어 기본적으로 얻을 수없는 것을 얻습니다. 많은 기능이 순수한 언어로 작성되었습니다. 예를 들어, C++ 표준 라이브러리의 컨테이너 섹션 & 알고리즘 섹션은 C++로 작성되어야합니다. 사실, C++ 표준 라이브러리는 C++로 작성해야합니다. 왜냐하면 템플릿을 사용하기 때문입니다. 나는 왜 당신이 어떤 소스를 찾지 못했는지 모르겠다. 마이크로 소프트 CRT 소스는 어떤 개발자라도 사용할 수있다. 나는 CRT 소스를 게시하는 것에 관한 질문을 확실히 본 적이있다. GNU libC++는 오픈 소스 다. 꽤 확신 해요.
모든 런타임 및 표준 라이브러리는 C/C++로 작성되었습니다. 대부분의 공급 업체가 소스 코드를 제공합니다.
이들은 대개 일부 어셈블리가 섞여서 C로 작성됩니다. Visual Studio에는 CRT (C RunTime) 용 소스 코드가 많이 포함되어 있지 않은 경우 많은 양의 소스 코드가 함께 제공됩니다. Linux glibc는 분명히 오픈 소스입니다. http://ftp.gnu.org/gnu/glibc/
C++ 표준 라이브러리는 대부분 템플릿 기반이므로 반드시 C++로 작성해야합니다. –
사람들이 대답을 downvote, 이유에 대한 언급 신경? 어떻게 이것이 올바르지 않습니까? –
런타임의 대부분은 C 또는 C++로 작성되었지만 중요한 예외가 있으며 이는 커널에 호출되는 코드입니다. 가장 중요한 운영 체제는 특수 명령 (SWI
또는 SVC
)을 사용하여 소프트웨어 인터럽트를 생성하여 수행합니다. C 또는 C++에는 이에 해당하는 것이 없으므로 어셈블러가 사용됩니다. 어셈블러는 일반적으로 매우 최적화 된 memcpy
, memmove
, memcmp
및 기타 유사한 기능을 구현하는 데 사용됩니다.
- 1. ocaml에서 표준 라이브러리의 소스 코드는 어디에 있습니까?
- 2. Facebook Questions 신청서는 어떤 언어로 쓰여 있습니까?
- 3. dotnet 실행 파일은 어떤 언어로 쓰여 있습니까?
- 4. NInject.Framework.Web의 소스 코드는 어디에 있습니까?
- 5. AutoScriptWriter의 소스 코드는 어디에 있습니까
- 6. 안드로이드 웹 브라우저의 소스 코드는 어디에 있습니까?
- 7. Mac에서 코어 덤프는 어디에 쓰여 있습니까?
- 8. 대부분의 Linux GUI 응용 프로그램은 어떤 언어로 쓰여 있습니까?
- 9. c 표준 라이브러리에서 stdin은 어디에 정의되어 있습니까?
- 10. git push, 숨겨진 소스 코드는 어디에 있습니까?
- 11. 7-Zip 압축 소스 코드는 어디에 있습니까?
- 12. Oolong과 Gnoloo의 소스 코드는 어디에 있습니까?
- 13. C++ 표준 라이브러리는 C 또는 어셈블리로 작성해야합니까?
- 14. Bonjour COM 라이브러리는 어디에 있습니까?
- 15. C#에서 연산자 오버로딩 - 실제 코드 코드는 어디에 있습니까?
- 16. 표준 C++ 문법이 있습니까?
- 17. Calculator 쇼케이스 코드는 어디에 있습니까?
- 18. 이 C++ 코드는 무엇을하고 있습니까?
- 19. ASP.NET MVC 용 Razor View Engine의 소스 코드는 어디에 있습니까?
- 20. C# : 그 코드는 어떤 기술입니까?
- 21. AuthKit의이 코드는 어떤 역할을합니까? (이 함수와 메소드는 어디에 정의되어 있습니까?)
- 22. sutherland-hodgman 폴리곤 클리핑 알고리즘의 표준 C 구현은 어디에 있습니까?
- 23. 연결할 수없는 코드는 어디에 있습니까?
- 24. 이 방법의 코드는 어디에 있습니까
- 25. 어떤 데이터/서비스가 어디에 있습니까?
- 26. 실버 라이트 자체에 어떤 코딩 언어가 쓰여 있습니까?
- 27. Google App Engine Java : "CompiledCursor"의 소스 코드는 어디에 있습니까?
- 28. <jdk> /jre/lib/deploy.jar의 소스 코드는 어디에 있습니까?
- 29. Android SDK에서 layoutopt 도구의 소스 코드는 어디에 있습니까?
- 30. Mozilla/Firefox 입력 대시 보드의 소스 코드는 어디에 있습니까?
이 C/C++ 사용은 유효하지 않습니다. 언어를 지정하십시오. – Puppy
"또는 어쩌면 나는 스킬 검색에 부족하다 ..."확실히 그렇다. 거의 모든 표준 라이브러리 구현은 소스 코드에서 사용할 수 있습니다. 심지어 Microsoft의 CRT 소스 코드는 Express Edition (모든 Microsoft의 개발 툴킷에 사용되는 표준 C 및 C++ 라이브러리 구현을 모두 포함)을 제외하고 Visual Studio 패키지에 포함되어 있습니다. 예 : [GCC] (http://gcc.gnu.org)와 [Glibc] (http://www.gnu.org/s/libc) 조합은 대부분의 Linux 배포판에서 사용됩니다. –