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

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

4
Як писати додаток для iOS чисто на C
Я читав тут Learn C Перед Objective-C? Зазвичай я замінюю деякий код Obj-C чистим кодом С (адже ви можете змішати їх скільки завгодно, вміст методу Obj-C може бути цілком, чистим кодом С) Це правда? Чи можливо створити додаток для iPhone виключно мовою програмування C?

17
Навіщо використовувати вказівники? [зачинено]
Наразі це запитання не підходить для нашого формату запитань. Ми очікуємо, що відповіді будуть підкріплені фактами, посиланнями або експертними знаннями, але це питання, ймовірно, вимагатиме дискусій, аргументів, опитувань чи розширеної дискусії. Якщо ви вважаєте, що це питання можна вдосконалити та, можливо, знову відкрити, відвідайте довідковий центр для ознайомлення . Закрито …
356 c++  c  pointers 

5
Як саме працює __attribute __ ((конструктор))?
Здається, досить зрозуміло, що він повинен налаштувати речі. Коли саме він працює? Чому існують дві дужки? Це __attribute__функція? Макрос? Синтаксис? Чи працює це в С? C ++? Чи функція, з якою вона працює, повинна бути статичною? Коли __attribute__((destructor))працює? Приклад в Objective-C : __attribute__((constructor)) static void initialize_navigationBarImages() { navigationBarImages = [[NSMutableDictionary …
348 c++  objective-c  c  gcc 

17
Як з'єднати con / retral рядки в C?
Я працюю в C, і мені потрібно об'єднати кілька речей. Зараз у мене це є: message = strcat("TEXT ", var); message2 = strcat(strcat("TEXT ", foo), strcat(" TEXT ", bar)); Тепер, якщо у вас є досвід роботи з C, я впевнений, що ви розумієте, що це призводить до помилки сегментації, коли …
347 c  string  concatenation 

10
Друк провідних 0 у C?
Я намагаюся знайти хороший спосіб друкувати провідні 0, наприклад, 01001 для поштового індексу. Хоча це число зберігатиметься як 1001, який хороший спосіб зробити це? Я подумав використати будь-які виписки з регістру / якщо потім розібратися, скільки цифр - це число, а потім перетворити його на масив char із додатковими 0 …
345 c  printf 

8
Як надрукувати "C без подписа" на C?
Я ніколи не можу зрозуміти, як друкувати unsigned longтип даних у C. Припустимо unsigned_foo, це unsigned long, я спробую: printf("%lu\n", unsigned_foo) printf("%du\n", unsigned_foo) printf("%ud\n", unsigned_foo) printf("%ll\n", unsigned_foo) printf("%ld\n", unsigned_foo) printf("%dl\n", unsigned_foo) І всі вони друкують якусь -123123123цифру замість того, unsigned longщо я маю.



10
Передача змінної кількості аргументів навколо
Скажімо, у мене функція C, яка приймає змінну кількість аргументів: Як я можу викликати іншу функцію, яка очікує змінну кількість аргументів всередині неї, передаючи всі аргументи, які потрапили в першу функцію? Приклад: void format_string(char *fmt, ...); void debug_print(int dbg_lvl, char *fmt, ...) { format_string(fmt, /* how do I pass all …

22
Чи неініціалізована локальна змінна є найшвидшим генератором випадкових чисел?
Я знаю, що неініціалізована локальна змінна - це невизначена поведінка ( UB ), а також значення може мати уявлення про пастку, що може вплинути на подальшу роботу, але іноді я хочу використовувати випадкове число лише для візуального подання і не буду надалі використовувати їх в іншій частині наприклад, встановіть щось …

30
Друк від 1 до 1000 без циклу чи умовних умов
Заблокований . Це запитання та його відповіді заблоковано, оскільки це питання поза темою, але має історичне значення. Наразі він не приймає нових відповідей чи взаємодій. Завдання : друкуйте числа від 1 до 1000, не використовуючи жодних циклів чи умовних операторів. Не пишіть заяву printf()або coutзаяву 1000 разів. Як би ви …
323 c++  c  printf 

23
Яка мета використання дужок (тобто {}) для однорядного if або циклу?
Я читаю конспекти лекцій свого лектора C ++, і він написав наступне: Використовуйте відступ // Добре Ніколи не покладайтеся на пріоритет оператора - Завжди використовуйте дужки // ОК Завжди використовуйте блок {} - навіть для одного рядка // не в порядку , чому ??? Об'єкт Const у лівій частині порівняння …

9
Як розділити літеральний рядок на кілька рядків у C / Objective-C?
У мене досить довгий запит sqlite: const char *sql_query = "SELECT statuses.word_id FROM lang1_words, statuses WHERE statuses.word_id = lang1_words.word_id ORDER BY lang1_words.word ASC"; Як я можу розбити його на ряд рядків, щоб полегшити читання? Якщо я виконую наступне: const char *sql_query = "SELECT word_id FROM table1, table2 WHERE table2.word_id = …
320 c  objective-c 

4
Поєднання C ++ та C - як працює #ifdef __cplusplus?
Я працюю над проектом, який має багато застарілого коду С. Ми почали писати на C ++ з наміром врешті-решт перетворити застарілий код. Я трохи розгублений у взаємодії C і C ++. Я розумію , що обгортання C коду extern "C"на C ++ компілятор буде спотворювати C кодових імен, але я …

4
Ця функція C завжди повинна повертати помилкове значення, але це не так
Я наткнувся на цікаве запитання на форумі давно і хочу знати відповідь. Розглянемо наступну функцію C: f1.c #include <stdbool.h> bool f1() { int var1 = 1000; int var2 = 2000; int var3 = var1 + var2; return (var3 == 0) ? true : false; } Це завжди повинно повертатися falseтак …
317 c  gcc 

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