Я хотел бы объявить функцию, которая возвращает указатель на функцию того же типа. Я хотел бы использовать его для реализации конечных автоматов как тот ниже: определение типа event_handler_t (*...
Код я продолжаю работать, как предполагается, возможно создать и для размещенных и для сред отдельных программ, обеспечивая частные реализации для некоторых функций stdlib для последнего случая. Могу я...
Я использую хеш FNV в качестве алгоритма хеширования для моей реализации Хеш-таблицы, но я получаю предупреждение в заголовке вопроса на этой строке: неподписанный хеш = 2166136261; я не понимаю почему это...
Руководство по Clang, похоже, находится в стадии разработки, поэтому не могли бы вы помочь мне сформулировать окончательные параметры командной строки для компиляции ANSI-C (AKA C89, C90) с максимальной строгостью и соответствующими / полезными ...
Я только что читал о том, как Google Go по умолчанию делает каждый поток с уменьшенным размером стека, а затем ссылки в новые стеки, если произойдет переполнение (см. стр. 16 здесь). Мне было интересно…
Как я могу разрешить использование VLA, массивов переменной длины, как определено в C99, в MS Visual C ++ или нет возможно вообще? Да, я знаю, что стандарт C ++ основан на C89, а VLA не являются ...
Я нашел следующий фрагмент (я думаю, в Википедии), который создает другое время выполнения, когда распознаются комментарии C ++, чем когда нет: int a = 4 // * Это комментарий, но где он заканчивается? * / 2; ...
Во-первых, это не обман: безопасно ли преобразовать int в указатель void и снова вернуться к int? Разница в вопросах заключается в следующем: я использую void * только для хранения int, но я никогда ...
Я читал, что ANSI C не совсем то же самое, что ISO C, и компиляторы могут по-разному интерпретировать то, что означает «-ansi». (gcc сопоставляет его с C90, clang сопоставляет его с C89 )В настоящий момент я склонен использовать...
Насколько я понимаю, спецификация C говорит, что тип int должен быть наиболее эффективным типом на целевой платформе, которая содержит не менее 16 бит. Разве это не то, что определение C99 ...
Определена ли разница двух переменных указателя, не являющихся недействительными (для C99 и / или C + +98), если они оба имеют значение NULL? Например, скажем, у меня есть структура буфера, которая выглядит следующим образом: struct buf {char ...
I am trying to run some tests using OPENmpi processing data in an array by spliting up the work across nodes (the second part is with matricies). I am running into some problems now because the data ...
Я понимаю, что существует как стандарт ANSI, так и стандарт ISO для C. Есть ли различия между этими двумя стандартами? Если так, то кто они? И если нет разницы, тогда что ...
Я ищу ANSI C реализация ШЛЯПЫ-trie, выпущенная в соответствии с некоторой бесплатной лицензией. Я не нашел тот. Можно ли указать на меня на некоторое автономное внедрение или программу, которая использует попытки ШЛЯПЫ достигнуть...
Это 2012 год. Я пишу код на C. Должен ли я все еще использовать C89? Существуют ли еще компиляторы, не поддерживающие C99? Я не против использования /**/ вместо //. Не уверен, что C89 запрещает...
Я хочу передать две матрицы в качестве аргумента. Эти матрицы имеют разный размер, и я не понимаю, как мне это сделать: #include
#include void f(int m[3][], ...
Я собираюсь изучить основы C и синтаксис, прежде чем приступить к системному программированию в следующем месяце. Читая, я наткнулся на стандарты C89 / 99. Согласно Википедии, C99 представил ...
Когда целое число выходит за пределы диапазона типа, максимальное значение + 1 добавляется/вычитается (в зависимости от того, в какой части диапазона было число ). Например, беззнаковое короткое число = 65537; число будет...
Я несколько раз читал в разных источниках (например, в Википедии: http://en.wikipedia.org/wiki/C_variable_types_and_declarations#Size), что в C long long не меньше long, что не так. ..
Много раз я хочу, чтобы функция получала переменное количество аргументов, заканчивающихся NULL, например #define push(stack_t stack, . ..) _push(__VARARG__, NULL);
func _push(stack_t stack, char *s, .....
Я пишу кастомный кроссплатформенный минималистичный TCP-сервер на простом C89. (Но я также приму ответ, относящийся к POSIX.) Сервер работает со строками UTF-8, но никогда не заглядывает внутрь них. Он лечит ...
Недавно я стал ассистентом преподавателя университетского курса, который в основном преподает C. Курс стандартизирован для C90, в основном из-за широкой поддержки компилятора. Один из очень запутанных ...
В документации Python утверждается, что следующее не работает на "некоторых" платформы или компиляторы ": int foo (int); // Определено в другой единице перевода.
структура X {int (* fptr) (int); } x = {& foo}; ...
взгляните на это.Компилятор жалуется, что у меня есть целочисленное переполнение, но когда я смотрю на правила стандарта C89 для интегрального продвижения вместе со значениями в этом выражении, кажется ...