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

4 ответа
Я давно наткнулся на интересный вопрос на форуме, и я хочу знать ответ. Рассмотрим следующую C-функцию: f1.c #include <stdbool.h> bool f1() { int var1 = 1000; int var2 = 2000; int var3 = var1 + var2; return (var3 == 0) ? true : false; } Это всегда должно возвращать false с v...
gcc
07 апр. 2016, в 13:58
8 ответов
Я заметил, что функция библиотеки rand(), когда она вызывается только один раз в цикле, она почти всегда производит положительные числа. for (i = 0; i < 100; i++) { printf("%d\n", rand()); } Но когда я добавляю два вызова rand(), генерируемые числа теперь имеют больше отрицательных чисел. fo...
random
13 июнь 2015, в 18:20
3 ответа
Учитывая коллегу как загадку, я не могу понять, как эта программа на самом деле компилируется и запускается. Что это за оператор >>>= и странный 1P1 литерал? Я тестировал в Clang и GCC. Предупреждений нет, а выход "???" #include <stdio.h> int main() { int a[2]={ 10, 1 }; wh...
obfuscation
bit-shift
literals
digraphs
25 авг. 2014, в 21:39
2 ответа
Я продолжаю видеть, что эта константа появляется в разных файлах графических заголовков 0.0039215689 Кажется, что-то связано с цветом? Вот первый хит в Google: void RDP_G_SETFOGCOLOR(void) { Gfx.FogColor.R = _SHIFTR(w1, 24, 8) * 0.0039215689f; Gfx.FogColor.G = _SHIFTR(w1, 16, 8) * 0.0039215...
floating-point
constants
magic-numbers
24 март 2014, в 21:44
2 ответа
Что такое "ЛОР"? Ошибка "Нет такого файла или каталога" должна быть просто названа "ENOFILE". Есть ли какая-нибудь история или причина?
11 нояб. 2013, в 08:46
10 ответов
Это мой make файл: all:ll ll:ll.c gcc -c -Wall -Werror -02 c.c ll.c -o ll $@ $< clean : \rm -fr ll Когда я пытаюсь make clean или make make, я получаю эту ошибку: :makefile:4: *** missing separator. Stop. Как я могу это исправить?...
makefile
05 июнь 2013, в 03:59
5 ответов
Я увидел интересную технику, используемую в ответе на еще один вопрос, и хотел бы ее понять немного лучше. Нам дано 64-битное целое без знака, и нас интересуют следующие биты: 1.......2.......3.......4.......5.......6.......7.......8....... В частности, мы хотели бы переместить их в верхние восемь ...
bit-manipulation
multiplication
27 янв. 2013, в 11:54
4 ответа
Я читаю здесь Узнать C до Objective-C? Обычно я заменяю некоторый код Obj-C чистым C-кодом (ведь вы можете смешивать их столько, сколько хотите, содержимое Obj-C-метода может быть полностью, чистым C-кодом) Это правда? Можно ли создать приложение для iPhone исключительно на языке программирования ...
cocoa-touch
objective-c-runtime
23 апр. 2012, в 23:53
13 ответов
У меня есть переменная типа size_t, и я хочу напечатать ее с помощью printf(). Какой спецификатор формата я использую для его печати? В битовой машине 32- %u кажется правильным. Я скомпилировал с g++ -g -W -Wall -Werror -ansi -pedantic, и не было никакого предупреждения. Но когда я компилирую этот...
printf
26 март 2010, в 16:38
11 ответов
В программировании на языке C вы можете передать любой вид указателя, который вам нравится, в качестве аргумента для бесплатной загрузки, как он знает, какой размер выделенной памяти свободен? Всякий раз, когда я передаю указатель на какую-то функцию, я должен также передавать размер (т.е. Массив из...
pointers
size
free
05 окт. 2009, в 07:54
25 ответов
alloca() выделяет память в стеке, а не в куче, как в случае malloc(). Поэтому, когда я возвращаюсь из рутины, память освобождается. Итак, на самом деле это решает мою проблему освобождения динамически распределенной памяти. Освобождение памяти, выделенной через malloc() является большой головной бо...
malloc
stack
allocation
alloca
19 июнь 2009, в 17:14
9 ответов
Недавно я встретил ссылку на proggit и (на данный момент) не объясняется. Я подозреваю, что это может быть, но я точно не знаю.
environment-variables
08 янв. 2009, в 20:22
16 ответов
Почему volatile требуется в C? Для чего его используют? Что он будет делать?
declaration
volatile
29 окт. 2008, в 08:48
8 ответов
Возможный дубликат: Как вы определяете размер файла в C? Как я могу узнать размер файла, который я открыл приложением, написанным на C? Я хотел бы знать размер, потому что я хочу поместить содержимое загруженного файла в строку, которую я выделяю с помощью malloc(). Просто пишу malloc(10000*sizeo...
file
size
26 окт. 2008, в 20:23
8 ответов
Есть ли лучший способ, чем просто открыть файл? int exists(const char *fname) { FILE *file; if ((file = fopen(fname, "r"))) { fclose(file); return 1; } return 0; }
cross-platform
filesystems
23 окт. 2008, в 14:41
Наверх
Меню