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.

5
Ein bisschen mit einem Booleschen vergleichen
Angenommen, ich habe eine Reihe von Flags, die in einem uint16_t codiert sind flags. Zum Beispiel AMAZING_FLAG = 0x02. Jetzt habe ich eine Funktion. Diese Funktion muss prüfen, ob ich das Flag ändern möchte, denn wenn ich das tun möchte, muss ich in Flash schreiben. Und das ist teuer. Daher …






3
Kann nullptr in uintptr_t konvertiert werden? Verschiedene Compiler sind sich nicht einig
Betrachten Sie dieses Programm: #include <cstdint> using my_time_t = uintptr_t; int main() { const my_time_t t = my_time_t(nullptr); } Es konnte nicht mit msvc v19.24 kompiliert werden: <source>(5): error C2440: '<function-style-cast>': cannot convert from 'nullptr' to 'my_time_t' <source>(5): note: A native nullptr can only be converted to bool or, using …
10 c++  c++11  gcc  visual-c++  clang 

1
Problem in GCC / C ++ 17 mit Vorlagenvorlagenklasse
Betrachten Sie die 2 folgenden Überlastungen template<typename T> bool test() { return true; } template<template<typename ...> class T> bool test() { return false; } Der erste funktioniert für reguläre Klassen, während der zweite für Vorlagen funktioniert, die nicht instanziiert sind. Zum Beispiel: std::cout<<test<int>()<<std::endl; <-- this yields 1 std::cout<<test<std::list>()<<std::endl; <--this yields …
10 c++  templates  gcc  clang  c++17 

1
Speicherverlust während unordered_map :: insert KeyEqual-Ausnahme mit GCC - Verletzung der Sicherheitsgarantie für starke Ausnahmen?
Ich verwende GCC 7.3.1, habe es aber auch auf coliru getestet, von dem ich glaube, dass es Version 9.2.0 ist. Bauen Sie mit folgendem: g++ -fsanitize=address -fno-omit-frame-pointer rai.cpp Hier ist rai.cpp: #include <iostream> #include <unordered_map> int main() { try { struct MyComp { bool operator()(const std::string&, const std::string&) const { …

2
Nicht übereinstimmender Abzug von Autotypen zwischen verschiedenen C ++ - Compilern
Daher versuche ich, das Punktprodukt ( https://en.wikipedia.org/wiki/Dot_product ) in einer Variante des modernen C ++ zu implementieren, und habe den folgenden Code gefunden: #include <iostream> template<class... Args> auto dot(Args... args) { auto a = [args...](Args...) { return [=](auto... brgs) { static_assert(sizeof...(args) == sizeof...(brgs)); auto v1 = {args...}, i1 = v1.begin(); …


1
CHAR_WIDTH nicht deklariert
Ich erhalte die Fehlermeldung, ‘CHAR_WIDTH’ undeclared wenn ich versuche, dieses einfache Programm zu kompilieren: #include <stdio.h> #include <limits.h> int main() { printf("CHAR_BIT = %d\n", CHAR_BIT); printf("CHAR_WIDTH = %d\n", CHAR_WIDTH); return (0); } mit gcc ./show_char_width.c -o show_char_width und gcc: GNU C17 (Ubuntu 8.3.0-6ubuntu1) Version 8.3.0 (x86_64-linux-gnu), kompiliert von GNU C …
9 c  gcc 




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.