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

C - це комп'ютерна мова програмування загального призначення, що використовується для операційних систем, ігор та інших високопродуктивних робіт.

11
Чи мали ви справу з космічним загартуванням?
Я дуже прагну вивчити кращі практики, коли справа стосується загального космосу. Наприклад, я читав (хоча я вже не можу знайти цю статтю), що деякі основні частини марсоходів Марса не використовували динамічне розподілення пам'яті, насправді це було заборонено. Я також читав, що старомодна основна пам'ять може бути кращою в просторі. Я …
62 c  memory 

10
Чи погана практика використовувати компілятор C ++ лише для перевантаження функцій?
Тому я працюю над розробкою програмного забезпечення, використовуючи C для певного процесора. Набір інструментів включає можливість компілювати як C, так і C ++. Для того, що я роблю, у цьому середовищі немає динамічного розподілу пам’яті, а програма загалом досить проста. Не кажучи вже про те, що у пристрою майже немає …

7
Чи слід перевіряти кожну маленьку помилку в С?
Як хороший програміст, слід написати надійні коди, які будуть обробляти кожен результат його програми. Однак майже всі функції з бібліотеки С повернуть 0 або -1 або NULL, коли є помилка. Іноді очевидно, що потрібна перевірка помилок, наприклад, коли ви намагаєтесь відкрити файл. Але я часто ігнорую перевірку помилок у таких …
60 c  error-handling 

8
Чому C забезпечує мовні "прив'язки", коли C ++ не вистачає?
Нещодавно мені було цікаво, коли використовувати C над C ++, і навпаки? На щастя, хтось мене вже обіграв, і хоча це зайняло певний час, я зміг перетравити всі відповіді та коментарі до цього питання. Однак один пункт у цій публікації постійно і знову звертається без будь-якого прикладу, перевірки чи пояснення: …

13
Філософія невизначеної поведінки
Специфікації C \ C ++ не дозволяють компіляторам відкрити велику кількість форм поведінки, щоб реалізувати їх по-своєму. Існує ряд питань, які завжди запитують тут про те саме, і у нас є чудові повідомлення про це: https://stackoverflow.com/questions/367633/what-are-all-the-common-undefined-behaviour-that-ac-programmer-should-know-abo https://stackoverflow.com/questions/4105120/what-is-undefined-behavior https://stackoverflow.com/questions/4176328/undefined-behavior-and-sequence-points Моє питання не в тому, що таке невизначена поведінка, чи це справді …

12
Це гідний приклад використання для goto in C?
Я дуже вагаюся з цим питанням, тому що я не хочу "вимагати дискусій, аргументів, опитувань чи розширених дискусій", але я новачок у С і хочу отримати більше розуміння загальних моделей, що використовуються в мові. Нещодавно я почув деяку неприємність до gotoкоманди, але нещодавно я також знайшов гідний приклад для цього. …

4
Коли і для яких цілей слід використовувати ключове слово const в C для змінних?
Під час перегляду мого коду тут з’явилася проблема використання constключового слова. Я розумію, що він використовується для реалізації поведінки лише для читання на змінних. Мене бентежить, які існують різні ситуації, коли це може бути корисним. Чи слід його використовувати для наочності в прототипах функцій? Чи слід його використовувати як захід …

15
Я не знаю С. І навіщо мені це вивчати? [зачинено]
Моєю першою мовою програмування був PHP ( ах ). Після цього я почав працювати з JavaScript. Я нещодавно робив роботу в C #. Я жодного разу не дивився на мови низького чи середнього рівня, як C. Загальний консенсус у програмі спільноти взагалі полягає в тому, що "програміст, який не навчився …

15
Чому у нас збільшується постфікс?
Відмова : Я прекрасно знаю семантику приставки та збільшення постфікса. Тому, будь ласка, не поясніть мені, як вони працюють. Читаючи питання про переповнення стека, я не можу не помітити, що програмісти заплутуються оператором збільшення постфікса знову і знову. З цього випливає наступне питання: чи є випадки використання, коли збільшення постфікса …
55 c++  c  postfix 

8
Що відбувається зі сміттям у C ++?
У Java є автоматичний GC, який час від часу зупиняє світ, але піклується про сміття на купі. Тепер додатки C / C ++ не мають цих STW заморожувань, а також використання їх пам'яті не зростає нескінченно. Як досягається така поведінка? Як опікуються мертвими предметами?

5
Це гарна ідея викликати команди оболонки зсередини С?
Є команда оболонки unix ( udevadm info -q path -n /dev/ttyUSB2), яку я хочу викликати з програми C. Мабуть, близько тижня боротьби, я міг би знову реалізувати це, але я не хочу цього робити. Чи є загальноприйнятою для мене хорошою практикою просто дзвонити popen("my_command", "r");, чи це спричинить неприйнятні проблеми …
50 c  unix  shell 

6
Чому багато функцій, які повертають структури в С, насправді повертають покажчики на структури?
Яка перевага повернення вказівника на структуру, на відміну від повернення всієї структури в returnоператорі функції? Я говорю про такі функції, як fopenта інші функції низького рівня, але, ймовірно, є функції вищого рівня, які також повертають покажчики до структур. Я вважаю, що це скоріше вибір дизайну, а не просто питання програмування, …

2
Чи більш ефективними є бібліотеки, призначені лише для заголовків?
Припущення Однією з переваг бібліотек, призначених лише для заголовків для C ++, є те, що їх не потрібно складати окремо. В C і C ++ inlineмає сенс лише, якщо функція визначена у файлі заголовка *. Традиційно в C, .c / .h використовується макет, де заголовок представляє мінімальний публічний інтерфейс блоку …
48 c++  c  libraries 

4
Як міг записати перший компілятор C ++ в C ++?
Stroustrup стверджує, що Cfront, перший компілятор C ++, був написаний на C ++ ( Stroustrup FAQ ). Однак як можливо навіть перший компілятор C ++ записати на C ++? Код, що складається з компілятора, теж повинен бути скомпільований, і тому перший компілятор C ++ не міг бути записаний на C …

3
Розробка Android за допомогою C і C ++ [закрито]
Я розробник C, C ++. Мене цікавить мобільний розвиток. Я хочу знати, як я можу розробляти додатки для Android за допомогою C та C ++, я читав, що вони надають набір для розробників C, C ++, але він не має всіх функцій, як у комплекті Java. Чи варто брати набір …
47 c++  c  android 

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