Запитання з тегом «c»

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


7
Як налаштувати завдання cron для запуску виконуваного файлу щогодини?
Мені потрібно налаштувати завдання cron, яке запускає виконуваний файл, скомпільований за допомогою gcc, раз на годину. Я увійшов як root і набрав текст crontab -e Потім я ввів наступне і зберіг файл. 0 * * * * /path_to_executable Однак робота cron не працює. Я бачу, що коли я набираю текст, …
94 c  linux  gcc  cron  crontab 


4
C libcurl отримує вихід у рядок
Я хочу зберегти результат цієї функції curl у змінній, як я можу це зробити? #include <stdio.h> #include <curl/curl.h> int main(void) { CURL *curl; CURLcode res; curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "curl.haxx.se"); res = curl_easy_perform(curl); /* always cleanup */ curl_easy_cleanup(curl); } return 0; } дякую, я вирішив це так: …
94 c  libcurl 


7
У C, як слід читати текстовий файл і друкувати всі рядки
У мене є текстовий файл з ім’ям test.txt Я хочу написати програму на мові C, яка зможе читати цей файл і надрукувати вміст на консолі (припустимо, файл містить лише текст ASCII). Я не знаю, як отримати розмір моєї змінної рядка. Подобається це: char str[999]; FILE * file; file = fopen( …
94 c  file  text-files 

8
Як відстежити помилку "подвійний вільний або корупційний"
Коли я запускаю свою програму (C ++), вона виходить з ладу з цією помилкою. * виявлено glibc * ./load: подвійна безкоштовна або корупція (! попередня): 0x0000000000c6ed50 *** Як я можу виявити помилку? Я спробував використовувати std::coutоператори print ( ), але безуспішно. Чи може gdbце полегшити?
94 c++  c  debugging  free 

10
Як програмно викликати дамп ядра в C / C ++
Я хотів би примусити дамп ядра в певному місці в моєму додатку C ++. Я знаю, що можу це зробити, виконавши щось на зразок: int * crash = NULL; *crash = 1; Але я хотів би знати, чи існує чистіший спосіб? Я, до речі, використовую Linux.
93 c++  c  linux  coredump  abort 

7
Навіщо визначати макрос лише якщо він ще не визначений?
У всій нашій базі коду С я бачу, що кожен макрос визначається наступним чином: #ifndef BEEPTRIM_PITCH_RATE_DEGPS #define BEEPTRIM_PITCH_RATE_DEGPS 0.2f #endif #ifndef BEEPTRIM_ROLL_RATE_DEGPS #define BEEPTRIM_ROLL_RATE_DEGPS 0.2f #endif #ifndef FORCETRIMRELEASE_HOLD_TIME_MS #define FORCETRIMRELEASE_HOLD_TIME_MS 1000.0f #endif #ifndef TRIMSYSTEM_SHEARPIN_BREAKINGFORCE_LBS #define TRIMSYSTEM_SHEARPIN_BREAKINGFORCE_LBS 50.0f #endif Яке обгрунтування робити ці перевірки визначення, а не просто визначати макроси? #define …

8
Що таке функція батута?
Під час останніх дискусій на роботі хтось посилався на функцію батута. Я прочитав опис у Вікіпедії . Досить дати загальне уявлення про функціональність, але хотілося б чогось більш конкретного. У вас є простий фрагмент коду, який би ілюстрував батут?

2
Який результат + = в C та C ++?
У мене такий код: #include <stdio.h> int main(int argc, char **argv) { int i = 0; (i+=10)+=10; printf("i = %d\n", i); return 0; } Якщо я спробую скомпілювати його як джерело C за допомогою gcc, я отримаю повідомлення про помилку: error: lvalue required as left operand of assignment Але якщо …
93 c++  c 

6
Що робить екстерн вбудований?
Я розумію, що inlineсам по собі є пропозицією для компілятора, і на свій розсуд він може вбудовувати функцію або не вбудовувати її, а також створюватиме об’єктний код, що зв’язується. Я думаю, що static inlineробить те саме (може, а може і не вбудовано), але не створює прив’язуваний об’єктний код, коли вбудований …

3
Як встановити точки зупинки для майбутніх спільних бібліотек за допомогою прапорця команди
Я намагаюся автоматизувати сеанс gdb, використовуючи --commandпрапор. Я намагаюся встановити точку зупинки для функції у спільній бібліотеці (Unix-еквівалент DLL). Мій cmds.gdb виглядає так: set args /home/shlomi/conf/bugs/kde/font-break.txt b IA__FcFontMatch r Однак я отримую таке: shlomi: ~ / progs / bugs-external / kde / font-breaking $ gdb --command = cmds.gdb ... GNU …
93 c++  c  linux  unix  gdb 


3
Чи існують машини, де sizeof (char)! = 1, або принаймні CHAR_BIT> 8?
На цей питання є відповіді на Stack Overflow на російській мові : Кто-нибудь встречал в своей практике sizeof (char)! = 1? Чи є машини (або компілятори), де sizeof(char) != 1? Чи зазначає стандарт C99, що sizeof(char)при впровадженні відповідності стандартам ПОВИННО бути рівно 1? Якщо так, будь ласка, дайте мені номер …
93 c  char  standards  sizeof  c99 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.