Вопросы по теме 'c11'
Как макрос может определить допустимое глобальное имя на основе переданного ему типа?
Я считаю, что название говорит само за себя, но вот пример, иллюстрирующий то, что я пытаюсь сделать:
#define PASTE2(_0, _1) _0 ## _1
#define DEFINE_OPS_FOR_TYPE(TYPE) \
int PASTE2(do_something_with_, TYPE)(void) { \...
313 просмотров
schedule
22.01.2024
Неопределенная ссылка на gets_s?
Я использую gcc в Ubuntu 4.6.1 и SUSE 4.6.2 со следующей командой
gcc gets_s.c
Мой исходный код
// Read and Display Lines
// gets_s.c
#include <stdio.h>
int main(void)
{
char first_name[11];
char last_name[11];...
5661 просмотров
schedule
02.01.2024
Что это за странные размеры массивов [*] и [static] в C99?
По-видимому, следующие прототипы функций действительны в C99 и C11:
void foo(int a[const *]);
void bar(int a[static volatile 10]);
Какова цель этих странных индексных обозначений * , static и квалификаторов CV?
Помогают ли они отличать...
1815 просмотров
schedule
19.01.2024
Использование strdup в C11
Я могу скомпилировать следующее, используя gcc версии 4.7.2.
#include <string.h>
int main(){
char text[] = "String duplicate";
char* dup = strdup(text);
return 0;
}
Но когда я использовал флаг --std=c11, я получаю...
5054 просмотров
schedule
03.02.2024
почему в C11 нет выровненного calloc
Стандарт C11 добавил функцию aligned_alloc для выделения неинициализированной выровненной памяти. Стандарт также включает функцию calloc для выделения памяти, которая инициализируется нулем, но только выравнивает ее по размеру самого большого...
2122 просмотров
schedule
30.11.2022
Файл uchar.h не найден в OS X 10.9
У меня сложилось впечатление, что мой компилятор C поддерживает C11, поскольку он принимает флаг -std=c11,
$ cc --version
Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
Target: x86_64-apple-darwin13.3.0
Thread model: posix
и...
3332 просмотров
schedule
06.02.2024
Что такое исходный файл для стандарта C11
У меня есть сомнения по поводу предложения в этом абзаце стандарта C11:
5.1.1.1 Структура программы
Программу на C не нужно переводить все одновременно. Текст программы хранится в единицах, называемых в настоящем стандарте исходными...
263 просмотров
schedule
21.03.2024
Мертвая ветвь выражения _Generic, вызывающая ошибку компилятора (C11)
Мне было интересно написать макрос проверки типа, который выдает предупреждение только в том случае, если тип не является int/short/long или указателем .
Проблема, с которой я столкнулся, заключается в том, что указатель может быть любым...
134 просмотров
schedule
03.03.2024
Условные выражения без ветвей для целых чисел — быстро, но можно ли их сделать быстрее?
Я экспериментировал со следующим и заметил, что определенное здесь «if» без ветвления (теперь с &-!! заменой *!! ) может ускорить код определенного узкого места почти в 2 раза на 64-битных целевых устройствах Intel с clang:
// Produces x if...
3971 просмотров
schedule
14.05.2024
Кросс-файл #if и #endif - должно ли это быть законным?
Согласно стандарту C11,
Предварительная обработка директивы формы
# включить новую строку "q-char-sequence"
вызывает замену этой директивы всем содержимым исходного файла, идентифицированного указанной последовательностью между...
384 просмотров
schedule
02.02.2024
Какой процессор тестировать C++11/C11 получить семантику выпуска
Я ищу процессор, который выполняет чтение/сохранение выпуска с той же семантикой, которая указана в стандартах C11/C++11.
Синхронизация процессора x86 слишком сильна, поэтому невозможно протестировать алгоритм без блокировок с использованием...
61 просмотров
schedule
24.11.2023
Объявление константы перечисления и определение — стандарт C
Стандарт C11 определяет в раздел 6.7/5 :
C11 6.7/5
Определение идентификатора — это объявление для этого идентификатора, которое:
(...)
— для константы перечисления является (единственным) объявлением идентификатора;...
82 просмотров
schedule
21.02.2024