Описание тега c2x

1 ответ

[[Nodiscard]] чем-нибудь отличается от [[gnu::warn_unused_result]]?

У меня был код, который использовал расширение GCC [[gnu::warn_unused_result]] (он же __attribute__((__warn_unused_result__)) ). Теперь я попытался использовать C2x и получил непонятную ошибку. Я не уверен, что использование [[nodiscard]] значительн…
21 июл '21 в 01:18
0 ответов

C2x: Являются ли термины «соответствующая реализация» и «соответствующая реализация» синонимами?

Рабочий проект N2596 - 11 декабря 2020 г.ISO / IEC 9899:202x (E): Соответствующая реализация должна ... ... Реализация в соответствии с IEC 60559 Являются ли термины «соответствующая реализация» и «соответствующая реализация» синонимами? Если да, то…
2 ответа

Каково определение «действующей программы»?

ISO / IEC 9899: рабочий проект 202x (E) - N2596 от 11 декабря 2020 г., сноска 9: ... реализация может создавать любое количество диагностических сообщений, часто называемых предупреждениями, пока действующая программа все еще правильно переведена. О…
06 ноя '21 в 13:21
1 ответ

Считается ли нормальным, что f = NAN может вызывать исключение с плавающей запятой?

C2x (как и предыдущий): Макрос определяется тогда и только тогда, когда реализация поддерживает тихие NaN для floatтип. Он расширяется до постоянного выражения типа float, представляющего тихий NaN. Пример кода (t0a.c) #include <stdio.h> #incl…
2 ответа

Если ограничение на количество генерируемых диагностических сообщений не определено, то нет ли ограничения?

Контекст: C2x (как и предыдущий), похоже, не определяет ограничение на количество генерируемых диагностических сообщений. Значит ли это, что нет предела? Если да, то почему некоторые компиляторы C (clang, msvc) имеют ограничения (20 ошибок и 100 оши…
10 ноя '21 в 02:03
0 ответов

Будут ли общие функции поддерживаться в C? [закрыто]

Известно, что C не поддерживает обобщенные функции. Обоснование C, редакция 5.10, апрель 2003 г.: Даже при явном приведении невозможно преобразовать указатель на функцию в указатель на объект или указатель в void или наоборот. Кто-нибудь знает, буду…
10 янв '22 в 22:47
1 ответ

Два типа имеют совместимый тип, если их типы одинаковы: запутанный

C2x (N2596), 6.2.7 Совместимый тип и составной тип, 1: Два типа имеют совместимый тип , если их типы совпадают. Смущенный: Как тип может иметь тип? Или что значит "их типы"? Что значит "совместимый тип"? Есть примеры? Уточните, пожалуйста, кто хорош…
12 янв '22 в 00:40
0 ответов

Определено ли поведение для добавления 0 к нулевому указателю?

Правильно ли определены следующие выражения? (int *)0 + 0 (int *)0 - (int *)0 Примечание. Можно ли добавлять ноль к нулевому указателю?тот же вопрос для С++.
27 апр '21 в 21:41
1 ответ

Как читать из сокета прямо в файл

В C (или C++) есть способ получать данные из сокета, но вместо того, чтобы читать их в буфер в памяти, он «получает» их в файл. Я знаю, что обычный способ сделать это — получить данные в буфер символов, а затем записать буфер в файл. Существует ли т…
03 июн '22 в 03:01