c11

    21Ciepło

    1Odpowiedz

    Mam następujący minimalny kod C11, który definiuje strukturę zawierającą uint16_t (co oznacza, że ​​powinna być wyrównana do 2 bajtów) i chcę rzucić bufor wskaźnik do tej struktury. Po ostrzeżeniu wsz

    6Ciepło

    1Odpowiedz

    Mam ten stonowany używany przypadek kodu, który po skompilowaniu z kompilatorem VS 2015 C++ generuje ostrzeżenie. #include <cwchar> #include <iostream> int main() { wchar_t input[100] = L"A b

    6Ciepło

    3Odpowiedz

    zgodnie z normą ISO/IEC 9899: 1999 6.7.5 §2, Każdy declarator deklaruje jeden identyfikator, i twierdzi, że po pojawieniu się declarator operand tego samego formie w wyrażeniu wyznacza funkcję lub obi

    7Ciepło

    3Odpowiedz

    Próbuję wygenerować funkcje przeciążone użyciu _Generic makro w C11, i przestali na zerowe argumenty przemawiają funkcji, np: #define msg(_1) _Generic((_1), char*: msg_string, default: msg_none)(_1)

    5Ciepło

    3Odpowiedz

    Niedawno zbadane w C11 i wiele nowych funkcji sprawia, że ​​łatwiej mi kod w C. Zastanawiam się, że WSZYSTKIE funkcje są oficjalnie wspierane przez C++ 11. Obawiam się, że nie chodzi o problemy z impl

    10Ciepło

    1Odpowiedz

    Zgodnie z the C standard, wszystkie znaki zwrócone przez fgetc są zwracane w postaci wartości , "konwertowane na int" (ten cytat pochodzi ze standardu C, stwierdzając, że rzeczywiście istnieje konwers

    14Ciepło

    1Odpowiedz

    Podczas sprawdzania wiadomości o GCC 8, I saw dodałem obsługę wersji C języka 2017 (nie C++ 17, naprawdę C17). Ale nie mogę znaleźć żadnych informacji na ten temat w Internecie. Czy jest to nowa wersj

    11Ciepło

    3Odpowiedz

    Nawet na prosty 2-wątku przykład komunikacji, mam trudność wyrazić to w C11 atomowej i memory_fence stylu w celu uzyskania odpowiedniej pamięci Kolejność: wspólne dane: volatile int flag, bucket; wą

    6Ciepło

    3Odpowiedz

    Chciałbym wiedzieć, czy następujący kod C przylega do C99 i/lub normy C11 (ów): void foo(int bar0, int bar1, int bar2) { int *bars = &bar0; printf("0: %d\n1: %d\n2: %d\n", bars[0], bars[1],

    8Ciepło

    3Odpowiedz

    Zauważyłem, że M_PI jest niedostępne na c11. Patrząc na /usr/include/math.h widzę M_PI jest zdefiniowane, gdy: #if !defined(__STRICT_ANSI__) || ((_XOPEN_SOURCE - 0) >= 500) ... #define M_PI 3.1415..