C - это язык программирования общего назначения, используемый для системного программирования (ОС и встраиваемых), библиотек, игр и кроссплатформенности. Этот тег следует использовать с общими вопросами, касающимися языка C, как это определено в стандарте ISO 9899 (последняя версия 9899: 2018, если не указано иное, а также для запросов, специфичных для версии, с c89, c99, c11 и т. Д.). C отличается от C ++ и не должен сочетаться с тэгом C ++ без разумной причины.

Подробнее про c...

Простой вопрос: допустимо ли enum { a } e = 1;? Другими словами: является ли корректным поведением присвоение значения, которого нет в наборе значений констант перечисления? Демо: $ gcc t0.c -std=c11 -pedantic -Wall -Wextra -c <nothing> $ clang t0.c -std=c11 -pedantic -Wall -Wextra -c <nothing> $ ....
4 Фев 2022 в 18:14
Обе строки printf должны печатать адрес переменной, верно? но они оба дают разное значение... Почему так, оба должны давать одинаковое значение, потому что место в памяти, выделенное для переменной a, фиксировано. #include <stdio.h> void main() { int a = 5; int *ptra = &a; printf("%d....
4 Фев 2022 в 09:15
Предполагаемый вывод состоит в том, чтобы сначала перевернуть всю строку ДНК, а затем преобразовать A T, C G. Однако в фактическом выводе первый символ печатается как «p», который появляется из ниоткуда, но остальная часть выходной строки в порядке. Вот код: int main() { const char dna[....
c
4 Фев 2022 в 04:00
Почему операция сдвига ниже работает и в конечном итоге равна? Есть ли какое-нибудь название у этого узора? Я пытаюсь выяснить, что творилось в голове у человека, написавшего этот код! int i = 0x1; i |= 0x1 << 1; i |= 0x1 << 2; i |= 0x1 << 3; i |= 0x1 << 4; i |= 0x1 << 5; int j = 5; if( ((0x1 <<....
4 Фев 2022 в 03:17
В функции read мне нужно получить доступ к значениям целых чисел a и целых чисел b из функции main без объявления их в прототипе функции read, с помощью указателей. Указатель x должен указывать на целое число a, а указатель y должен указывать на целое число b. #include <stdio.h> void read(int zzz[....
4 Фев 2022 в 02:36
Мой код работает нормально, но я работаю с довольно большой программой и хотел бы найти более простой/короткий способ сделать то же самое. Мне нужно проверить, что пользователь вводит данные, которые действительны в соответствии с тем, что спрашивают. Как я это делаю сейчас: while(validDoses == 0) ....
c
4 Фев 2022 в 01:47
Я попытался закодировать небольшой калькулятор. Пользователь должен решить, хочет ли он сложить, вычесть, умножить или разделить два числа. Это, вероятно, ошибка нуба, так как я второй день изучаю программирование, но вот код: #include <stdio.h> #include <stdbool.h> int main() { float a; ....
4 Фев 2022 в 00:27
Этот код C: #include <stdio.h> #define uint64 unsigned long long unsigned long long main() { unsigned int i = 0x50da; unsigned int j = 0xc0ffee; uint64 k = 0x7ea707a11ed; k ^= ~(i & j) | 0x7ab00; return k; } Компилируется в этот ассемблерный код: 0x555555555129 <ma....
3 Фев 2022 в 23:07
int main(int argc, char* argv[]) { int num = atoi(argv[1]); if (argc < 2 || argc > 3) { fprintf(stderr, "Usage:\tpartner1 (nameIndex)\n"); exit(EXIT_FAILURE); } if (num < 0 || num > 2) { printf("nameIndex must be in[0, 1, 2]"); exit(EXIT_FAILUR....
c
3 Фев 2022 в 23:06
Ниже я извлек фрагмент кода из проекта, над которым я запустил инструмент статического анализа в поисках недостатков безопасности. Он пометил этот код как восприимчивый к целочисленному переполнению/зацикливанию, как описано здесь: https://cwe.mitre.org/data/definitions/190.html Вот соответствующий....
3 Фев 2022 в 20:34
После осознания того, что тип String (с большой буквы S) на Arduino был большим источником проблем (см. strings/" rel="nofollow noreferrer">https://hackingmajenkoblog.wordpress.com/2016/02/04/the-evils-of-arduino-strings/), я пытаюсь разобраться с c- string, чтобы быть более безопасным и надежным ....
3 Фев 2022 в 20:05
У меня есть 4.8meters Я хочу поместить 4.8 в переменную float и meters в строку. Я хотел сделать это с помощью strtok(), но не смог.....
c
3 Фев 2022 в 19:59
Я читаю книгу Head First C и в главе об указателях (и арифметике указателей) я ничего не мог понять. Мне нужно написать такие массивы, чтобы напечатать его 3-й элемент: main(){ int drinks[] = {4, 2, 3}; printf("3rd order: %i drinks\n", *(drinks + 2)); } Но при использовании указателя мне нужно напи....
3 Фев 2022 в 19:50
Я новичок как здесь, в stackoverflow, так и в мире программирования. Сегодня я решал упражнение на рекурсию, и одно из них попросило написать рекурсивную функцию для нахождения минимального элемента массива. После многих попыток я, наконец, написал этот рабочий код, но я хочу спросить вас, является ....
3 Фев 2022 в 18:57
Я хочу удалить первый узел списка (я называю его «головой»), но вывод дает мне ошибку «освобождаемый указатель не был выделен». Вы знаете, в чем проблема? Извините за итальянские слова, если вы что-то не поняли, я могу отредактировать свой вопрос. Я думаю, что проблема в void cancellaTriangolo. ....
3 Фев 2022 в 17:55
Насколько я знаю, если вы создадите глобальную структуру следующим образом: something name; int main(){ } Вы можете получить доступ к каждому полю структуры something, но если бы я вместо этого сделал это так: something* name; int main(){ } Будет ли это теперь неправильным, потому что мне нужно вы....
3 Фев 2022 в 14:42
Привет, я пытаюсь вставить элемент в список в определенном порядке (мне нужно добавить равносторонний треугольник). Когда я пытаюсь использовать код, я могу вставить данные (измерения треугольника), но когда я пытаюсь распечатать список, ничего не появляется:/. Поэтому я думаю, что я написал что-то....
3 Фев 2022 в 13:21
Как в этом случае заменить корпус переключателя на стол? typedef enum { DIV_1 = 1, DIV_2, DIV_4 = 4, DIV_8 = 8, DIV_16 = 16 } eDiv_t; eDiv_t Division; uint32_t dividerValue; switch (Division) { case DIV_1: dividerValue = RCC_DIV_1; break; ....
3 Фев 2022 в 13:04
int array[2][3] = {{2,3,6},{4,5,8}}; printf("%d\n",*array); Что из этого выйдет и объясните пожалуйста как? С Уважением, Уинстон....
Я попытался использовать valgrind для запуска следующего кода. В приведенных ниже функциях наблюдается некоторая утечка кучи. Мой вопрос: где правильное положение для освобождения выделенной памяти? А также с точки зрения рекурсии, такой как trav = trav -> правильно, мне также нужно ее освободить....
3 Фев 2022 в 07:43
Вот строки кода. язык программирования: С #include <stdio.h> #include <stdbool.h> bool output(int month,int day) { switch(month){ case 1 : if(day<=31) return true; break; case 2 : if(day<=29) return true; break; case 3 : if(day<=31) return true; break; case 4 : if(day<=30) return true; break; case....
c
3 Фев 2022 в 06:03
Когда я печатаю строку с printf, как показано ниже: #include <stdio.h> void main(void) { printf("Foo"); } На выходе получаю следующее: Как видно на этом рисунке, после вывода printf стоит выделенный знак процента. Что вызывает это? Как мне избавиться от этого?....
3 Фев 2022 в 05:08
Почему строка "test" распечатывается как аргумент? Я не передаю указатель на строку, так как я не выделил ее перед аргументом Хранится ли строковый аргумент «тест» где-то в куче памяти? void printAstring(char * string){ printf("%s",string); } printAstring("test"); //Prints out test Обычно, ес....
3 Фев 2022 в 03:47
Я пытаюсь выяснить, насколько я должен заботиться о выравнивании. Здесь я тестирую некоторые арифметические действия, используя два разных буфера. Если я настрою это правильно, в «дурацком» буфере целое число будет сохранено в 29-м байте произвольно. В «нормальном» буфере целое число хранится в 2....
c
3 Фев 2022 в 03:31
Это то, что я пытаюсь заставить работать #include <stdio.h> #include <stdlib.h> char * xspace(char *s) { int i = 0, j = 0, n = strlen (s); char final_string[n]; for (i; s[i] != '\0'; i++) { final_string[j] = s[i]; if(s[i] != ' ') { final_string[....
c
2 Фев 2022 в 23:27