c — вопросы с ответами

5 ответов
Почему препроцессор C в GCC интерпретирует слово linux (маленькие буквы) как константу 1? test.c: #include <stdio.h> int main(void) { int linux = 5; return 0; } Результат $ gcc -E test.c (остановка после этапа предварительной обработки): .... int main(void) { int 1 = 5; ...
gcc
c-preprocessor
06 окт. 2013, в 17:11
4 ответа
Как работает эта C-программа? main(_){_^448&&main(-~_);putchar(--_%64?32|-~7[__TIME__-_/8%8][">'txiZ^(~z?"-48]>>";;;====~$::199"[_*2&8|_/64]/(_&2?1:8)%8&1:10);} Он компилируется как есть (проверен на gcc 4.6.3). Он печатает время компиляции. В моей системе: !! !!!!...
obfuscation
deobfuscation
13 март 2013, в 18:01
48 ответов
Как бы вы разделили число на 3 без использования *, /, +, -, %, операторов? Число может быть подписано или без знака.
math
division
27 июль 2012, в 20:32
13 ответов
C не имеет встроенных булевых типов. Какой лучший способ использовать их в C?
boolean
17 дек. 2009, в 12:47
12 ответов
Я новичок в программировании на С, но мне было интересно узнать, какая разница между использованием typedef при определении структуры или использованием typedef. Мне кажется, что нет никакой разницы, они достигают той же цели. struct myStruct{ int one; int two; }; против typedef struct{ ...
struct
typedef
04 нояб. 2009, в 17:02
18 ответов
В чем разница между выполнением: ptr = (char **) malloc (MAXELEMS * sizeof(char *)); или ptr = (char **) calloc (MAXELEMS, sizeof(char*)); Когда полезно использовать calloc над malloc или наоборот?
malloc
calloc
08 окт. 2009, в 14:59
16 ответов
Я знаю, что глобальные переменные в C иногда имеют ключевое слово extern. Что такое переменная extern? Что такое декларация? Какова его область действия? Это связано с обменом переменными в исходных файлах, но как это работает? Где я могу использовать extern?...
global-variables
extern
16 сен. 2009, в 16:00
26 ответов
Значение обоих ускользает от меня.
declaration
definition
terminology
c++-faq
11 сен. 2009, в 13:53
15 ответов
#include <stdio.h> int main(void) { int i = 0; i = i++ + ++i; printf("%d\n", i); // 3 i = 1; i = (i++); printf("%d\n", i); // 2 Should be 1, no ? volatile int u = 0; u = u++ + ++u; printf("%d\n", u); // 1 u = 1; u = (u++); printf("%d\n", u); // 2 Should ...
increment
undefined-behavior
order-of-evaluation
sequence-points
04 июнь 2009, в 08:39
20 ответов
Я видел слово static, используемое в разных местах в коде C; это как статическая функция/класс в С# (где реализация разделяется между объектами)?
static
syntax
21 фев. 2009, в 06:26
19 ответов
У меня есть большой массив в C (а не С++, если это имеет значение). Я хочу инициализировать все члены с одинаковым значением. Я мог бы поклясться, что когда-то знал простой способ сделать это. Я мог бы использовать memset() в моем случае, но не существует способа сделать это, который встроен прямо в...
arrays
initialization
14 окт. 2008, в 13:05
11 ответов
Когда вы спрашиваете о общем поведении undefined в C, души более просвещены, чем я говорил о правиле строгого псевдонимов. О чем они говорят?
undefined-behavior
strict-aliasing
type-punning
c++-faq
19 сен. 2008, в 01:09
31 ответ
Я работал над встроенной системой этим летом, написанным на прямой C. Это был уже существующий проект, в котором я работал. Я довольно привык к написанию модульных тестов на Java с помощью JUnit, но был в недоумении, как лучший способ писать модульные тесты для существующего кода (который нуждался в...
unit-testing
testing
embedded
15 сен. 2008, в 19:46
24 ответа
Как определить размер моего массива в C? То есть, количество элементов, которые может содержать массив?
arrays
memory
01 сен. 2008, в 06:47
17 ответов
В C, в чем разница между использованием ++i и i++ и который должен использоваться в блоке инкрементации цикла for?
for-loop
pre-increment
post-increment
24 авг. 2008, в 06:54
Наверх
Меню