Was ist das CC-Dateiformat?
Eine .cc-Datei ist eine C++-Quellcodedatei im Klartextformat. Sie enthält menschenlesbaren C++-Code, einschließlich Präprozessor-Anweisungen wie #include und #define, Namensraum-Deklarationen, Klassendefinitionen und Funktionskörper. Die Erweiterung .cc ist funktional identisch mit .cpp - beide enthalten C++-Quellcode -, aber .cc ist die Konvention, die von der GNU-Toolchain und dem Google C++ Style Guide bevorzugt wird, während .cpp der Standard in Windows- und Visual Studio-Projekten ist.
Um ein ausführbares Programm zu erstellen, muss eine .cc-Datei kompiliert werden. Unter Linux und macOS sind die typischen Befehle g++ file.cc -o output oder clang++ file.cc -o output. Unter Windows akzeptieren auch MSVC (cl.exe) und MinGW-w64 .cc-Dateien, obwohl dort konventionsgemäß .cpp gebräuchlicher ist.
Die Datei besteht aus reinem ASCII- oder UTF-8-Text ohne binäre Signatur oder Magic Bytes. Ein optionales UTF-8 BOM (EF BB BF) kann bei Offset 0 erscheinen, wird aber selten verwendet und ist nicht erforderlich. Dateien öffnen normalerweise mit Kommentarblöcken, #include-Anweisungen (z. B. #include <iostream>) und anschließend Klassen- oder Funktionsdefinitionen.
Der vom Code angestrebte C++-Sprachstandard - C++11, C++17, C++20 oder C++23 - wird zur Kompilierzeit über ein Flag wie --std=c++23 ausgewählt und ist nicht in der .cc-Datei selbst eingebettet. Zugehörige Deklarationen werden normalerweise in einer gepaarten .hh- oder .hpp-Header-Datei aufbewahrt. Die Kompilierung erzeugt eine .o-Objektdatei (Linux/macOS) oder .obj (Windows), die dann zu einer finalen ausführbaren Datei oder Bibliothek verlinkt wird.
Sicherheit
RISIKO: LOWEine .cc-Datei ist reiner Text und kann nicht von selbst ausgeführt werden, daher ist das Öffnen in einem Editor sicher. Das Risiko besteht erst, wenn Sie unbekannten C++-Code KOMPILIEREN und AUSFÜHREN: Quellcode aus einer nicht vertrauenswürdigen Quelle kann nach dem Bauen alles tun, was ein Programm tun kann (Dateien löschen, Netzwerkzugriff, Malware installieren). Die hardwarenahe Natur von C++ macht es einfach, bösartigen oder fehlerhaften Code zu verstecken. Lesen Sie den Code vor dem Kompilieren, bauen Sie nicht vertrauenswürdigen Code in einer Sandbox/VM und führen Sie niemals eine kompilierte Binärdatei aus, der Sie nicht vertrauen. Die Erweiterung selbst birgt keinen Exploit - die Gefahr liegt darin, was der Code nach der Kompilierung tut.
Formatdetails
kurz gefasst- Cult3D Designer Szene (veraltet) - Cycores Cult3D verwendete .cc als exportierte interaktive 3D-Szene; die Toolchain ist seit langem eingestellt und die Bedeutung als C++-Quelle dominiert heute.
- GNU/Unix C++ Konvention vs. .cpp - Sowohl .cc als auch .cpp bezeichnen C++-Quellcode; .cc wird von GNU- und Google-Styleguides bevorzugt, .cpp von Windows/Visual Studio - gleiche Sprache, andere Konvention.
Programme zum Öffnen von CC-Dateien
Technische Details
technische Spezifikation| MIME-Typ | text/x-c++src (ebenfalls akzeptiert: text/x-c++, text/plain) |
| Dateikodierung | Klartext - ASCII oder UTF-8; optionales UTF-8 BOM (EF BB BF) bei Offset 0 |
| Binäre Signatur (Magic Bytes) | Keine - Klartextdatei ohne feste Bytesequenz; Identifizierung über Erweiterung oder Inhaltsmuster |
| Typische Dateigröße | Einige KB bis zu mehreren Dutzend KB pro Quelldatei; große Codebasen können einzelne Dateien mit Hunderten von KB enthalten |
| Zeilenenden | LF (Unix/Linux/macOS-Konvention) oder CRLF (Windows) |
| Kompilierung erforderlich | Ja - eine .cc-Datei ist nur Quellcode; sie muss mit g++, clang++ oder MSVC kompiliert werden, bevor sie ausgeführt werden kann |
| Gängige Compiler | GCC (g++), Clang (clang++), MSVC (cl.exe), MinGW-w64 |
| C++-Standardziele | C++98 bis C++23; Standard wird per Compiler-Flag ausgewählt (z. B. -std=c++17 oder /std:c++20), nicht in der Datei gespeichert |
| Erweiterungskonvention | Bevorzugt von der GNU-Toolchain und dem Google C++ Style Guide; .cpp ist die Windows / Visual Studio-Konvention für identischen Inhalt |
| Präprozessor-Anweisungen | #include, #define, #ifdef/#ifndef, #pragma und andere C-Präprozessor-Anweisungen erscheinen normalerweise am Anfang der Datei |
| Zugehörige Header-Dateien | Gepaart mit .hh- oder .hpp-Headern; die .cc-Implementierungsdatei zieht Deklarationen über #include ein |
| Kompilierte Ausgabe | Kompiliert in eine .o-Objektdatei (Linux/macOS) oder .obj (Windows); anschließend zu einer ausführbaren Datei oder statischen/gemeinsamen Bibliothek verlinkt |
| Unterstützte Sprachfunktionen | Klassen, Templates, Exceptions, STL-Container, RAII, Lambda-Ausdrücke, constexpr und Concepts (C++20+) |
| Build-System-Integration | Als Quelle in Makefile, CMakeLists.txt (CMake), BUILD (Bazel) oder meson.build-Dateien aufgeführt |
| Austauschbarkeit mit .cpp | .cc und .cpp sind funktional identische C++-Quellerweiterungen; die meisten Compiler akzeptieren beide; die Wahl ist rein stilistisch |
| Veröffentlicht | C++ created 1983 (Bell Labs); standardized ISO C++98 (1998); latest C++23. The .cc extension is a long-standing C++ convention (notably GNU and Google style) |
| Neueste Version | ISO/IEC 14882:2023 (C++23) |
| Offener Standard | Ja · lizenzgebührenfrei |
| Spezifikation | www.iso.org |
CC-Konvertierungen
Community Q&A
von Nutzern gefragtNoch keine Fragen - stellen Sie die erste Frage zu CC-Dateien.