Câu hỏi được gắn thẻ «gcc»

GCC là Bộ sưu tập Trình biên dịch GNU. Đây là trình biên dịch tiêu chuẩn thực tế cho C, C ++, Go, Fortran và Ada trên Linux và cũng hỗ trợ nhiều ngôn ngữ và nền tảng khác. Ngoài trình biên dịch, GCC còn có một chuỗi công cụ (libc, libstdc ++, objdump, nm, v.v.) được sử dụng rộng rãi trên một số nền tảng và hệ thống.

1
Tại sao GCC tổng hợp khởi tạo một mảng lại lấp đầy toàn bộ mọi thứ bằng các số 0 trước, bao gồm các phần tử khác không?
Tại sao gcc lấp đầy toàn bộ mảng bằng số 0 thay vì chỉ 96 số nguyên còn lại? Các khởi tạo khác không là tất cả ở đầu mảng. void *sink; void bar() { int a[100]{1,2,3,4}; sink = a; // a escapes the function asm("":::"memory"); // and compiler memory …


1
Clang không biên dịch mã nhưng gcc và msvc đã biên dịch nó
Tôi không hiểu vấn đề là gì: trong mã của tôi hoặc trong trình biên dịch (ít có thể hơn). Có một đoạn mã như thế này: #include <iostream> #include <type_traits> #include <set> template<typename T, typename = void> struct TestA: std::false_type {}; template<typename T> struct TestA<T, std::void_t<typename T::reverse_iterator>> : std::true_type …


5
So sánh một chút với một boolean
Giả sử tôi có một bộ cờ, được mã hóa trong uint16_t flags. Ví dụ , AMAZING_FLAG = 0x02. Bây giờ, tôi có một chức năng. Hàm này cần kiểm tra xem tôi có muốn thay đổi cờ không, vì nếu tôi muốn làm điều đó, tôi cần viết vào …






3
Nullptr có thể được chuyển đổi thành uintptr_t không? Trình biên dịch khác nhau không đồng ý
Hãy xem xét chương trình này: #include <cstdint> using my_time_t = uintptr_t; int main() { const my_time_t t = my_time_t(nullptr); } Không thể biên dịch với msvc v19.24: <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, …
10 c++  c++11  gcc  visual-c++  clang 

1
Sự cố trong GCC / C ++ 17 với lớp mẫu mẫu
Hãy xem xét 2 tình trạng quá tải sau đây template<typename T> bool test() { return true; } template<template<typename ...> class T> bool test() { return false; } Cái thứ nhất hoạt động cho các lớp thông thường, trong khi cái thứ hai hoạt động cho các mẫu không được …
10 c++  templates  gcc  clang  c++17 

1
Rò rỉ bộ nhớ trong unordered_map :: chèn ngoại lệ KeyEqual với GCC - phá vỡ bảo đảm an toàn ngoại lệ mạnh?
Tôi đang sử dụng GCC 7.3.1, nhưng cũng đã thử nghiệm trên coliru, mà tôi tin là phiên bản 9.2.0. Xây dựng với những điều sau đây: g++ -fsanitize=address -fno-omit-frame-pointer rai.cpp Đây là rai.cpp: #include <iostream> #include <unordered_map> int main() { try { struct MyComp { bool operator()(const std::string&, const …

2
Khấu trừ các loại tự động giữa các trình biên dịch c ++ khác nhau
Vì vậy, tôi đang cố gắng triển khai sản phẩm chấm ( https://en.wikipedia.org/wiki/Dot_product ) trong một số hương vị của C ++ hiện đại và đưa ra mã sau: #include <iostream> template<class... Args> auto dot(Args... args) { auto a = [args...](Args...) { return [=](auto... brgs) { static_assert(sizeof...(args) == sizeof...(brgs)); auto …


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.