Als «gcc» getaggte Fragen

GCC ist die GNU Compiler Collection. Es ist der De-facto-Standard-Compiler für C, C ++, Go, Fortran und Ada unter Linux und unterstützt auch viele andere Sprachen und Plattformen. Neben dem Compiler verfügt GCC über eine Toolchain (libc, libstdc ++, objdump, nm usw.), die auf verschiedenen Plattformen und Systemen weit verbreitet ist.

7
C ++ Warnung: Division von Double durch Null
Fall 1: #include <iostream> int main() { double d = 15.50; std::cout<<(d/0.0)<<std::endl; } Es wird ohne Warnungen kompiliert und gedruckt inf. OK, C ++ kann die Division durch Null verarbeiten ( siehe live ). Aber, Fall 2: #include <iostream> int main() { double d = 15.50; std::cout<<(d/0)<<std::endl; } Der Compiler …

4
Wie kann man feststellen, woher eine Header-Datei stammt?
Wie kann ich feststellen, wo g ++ eine Include-Datei finden konnte? Grundsätzlich wenn ich #include <foo.h> g ++ scannt den Suchpfad und verwendet alle Include-Optionen, um den Pfad hinzuzufügen oder zu ändern. Aber gibt es am Ende der Tage eine Möglichkeit, den absoluten Pfad von foo.h zu bestimmen, den g …
96 c++  c  gcc  include  g++ 

2
Was ist der Unterschied zwischen den gcc-Parametern `-fpic` und` -fPIC`?
Ich habe die gccManpage bereits gelesen , kann aber den Unterschied zwischen -fpicund immer noch nicht verstehen -fPIC. Kann es jemand auf sehr einfache und klare Weise erklären? Verwandte Fragen: Was bedeutet -fPIC beim Erstellen einer gemeinsam genutzten Bibliothek? Welche Auswirkungen hat das Kompilieren von Objekten mit dem Flag gcc …
96 gcc  fpic 


12
Wie kann ich "sizeof" in einem Präprozessor-Makro verwenden?
Gibt es eine Möglichkeit, a sizeof in einem Präprozessor-Makro zu verwenden? Zum Beispiel gab es im Laufe der Jahre eine Menge Situationen, in denen ich etwas tun wollte wie: #if sizeof(someThing) != PAGE_SIZE #error Data structure doesn't match page size #endif Das genaue, was ich hier überprüfe, ist vollständig erfunden …
95 c  gcc 


8
Wie ändere ich den Standard-GCC-Compiler in Ubuntu?
Ich habe gcc-3.3 / g ++ - 3.3 auf Ubuntu 11.04 installiert, das bereits gcc / g ++ - 4.4 enthält. In meinem System sind also sowohl gcc-3.3 als auch 4.4 verfügbar. Ich kann beide Compiler aufrufen, wie ich möchte. Wenn ich nur den Befehl gccaufrufe, wird gcc-4.4 aufgerufen. Um …
95 linux  ubuntu  gcc 






4
experimenteller :: Dateisystem-Linker-Fehler
Ich versuche, die neuen c ++ 1z-Funktionen tatsächlich auf dem Kopf der Entwicklung in gcc 6.0 zu verwenden. Wenn ich dieses kleine Beispiel versuche: #include <iostream> #include <experimental/filesystem> namespace fs = std::experimental::filesystem; int main() { fs::path p1 = "/home/pete/checkit"; std::cout << "p1 = " << p1 << std::endl; } Ich …
94 c++  gcc  c++17 

13
Entwirrung des Ergebnisses von std :: type_info :: name
Ich arbeite derzeit an einem Protokollierungscode, der unter anderem Informationen über die aufrufende Funktion drucken soll. Dies sollte relativ einfach sein, Standard C ++ hat eine type_infoKlasse. Dies enthält den Namen der Typ-ID-Klasse / Funktion / etc. aber es ist verstümmelt. Es ist nicht sehr nützlich. Dh typeid(std::vector<int>).name()zurück St6vectorIiSaIiEE. Gibt …
93 c++  gcc  name-mangling 

9
Wie deaktiviere ich die nicht verwendeten Variablenwarnungen, die aus gcc im Code eines Drittanbieters kommen, den ich nicht bearbeiten möchte?
Ich möchte wissen, welchen Schalter Sie an den gcc-Compiler übergeben, um nicht verwendete Variablenwarnungen zu deaktivieren. Ich bekomme Fehler durch Boost unter Windows und möchte den Boost-Code nicht berühren: C:\boost_1_52_0/boost/system/error_code.hpp: At global scope: C:\boost_1_52_0/boost/system/error_code.hpp:214:36: error: 'boost::system::posix_category' defined but not used [-Werror=unused-variable] C:\boost_1_52_0/boost/system/error_code.hpp:215:36: error: 'boost::system::errno_ecat' defined but not used [-Werror=unused-variable] C:\boost_1_52_0/boost/system/error_code.hpp:216:36: …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.