1.2: Часті запитання
- Page ID
- 29482
Навіщо вивчати програмування мови C?
C є, мабуть, найбільш широко використовуваною мовою розробки сьогодні. Саме це є вагомою причиною, щоб розглянути це, але є ще:
- Це сучасна структурована мова, яка була стандартизована (ANSI).
- Він модульний, що дозволяє повторне використання коду.
- Він широко підтримується, що дозволяє використовувати вихідний код для декількох різних платформ шляхом просто перекомпіляції для нової мети.
- Його популярність означає, що для «розтягування» мови доступні кілька сторонніх доповнень (бібліотек і модулів).
- Він має перевірку типів, яка допомагає ловити помилки.
- Він дуже потужний, що дозволяє наблизитися «до металу».
- Як правило, він створює дуже ефективний код (невеликий простір і швидке виконання).
Яка різниця між C і C ++?
C ++ є надмножиною C. Спочатку прийшов C, потім прийшов C ++. Насправді назва C++ - жарт програміста, тому що ++ є оператором інкременту в C. Таким чином, C++ буквально означає «інкремент C», або, можливо, «дати мені наступний C». C ++ робить все, що робить C плюс набагато більше. Ці додаткові функції не приходять безкоштовно, а вбудовані програми зазвичай не можуть дозволити собі накладні витрати. Отже, хоча багато роботи на робочому столі робиться в C ++, а також C, більшість вбудованих робіт виконується в C. Системи розробки настільних ПК зазвичай називають системами C/C ++, що означає, що вони будуть робити обидва. Вбудовані системи розробки можуть бути строго С або навіть його варіантом (як у нас).
Де я можу придбати дошку розвитку Arduino?
Плата Arduino Uno доступна з різних джерел, включаючи Digi-Key, Mouser, Parts Express та інші. Магазин навколо!
Яка різниця між розробкою настільних ПК та вбудованим програмуванням?
Розробка робочого столу орієнтована на додатки для настільних комп'ютерів. До них відносяться такі речі, як текстові процесори, графічні утиліти, ігри, програми CAD і т.д. це те, про що більшість людей думають, коли вони чують слово «комп'ютер». Вбудоване програмування фокусується на безлічі майже невидимих додатків, які оточують нас щодня. Приклади включають код, який запускає вашу мікрохвильову піч, систему управління автомобільним двигуном, мобільний телефон і багато інших. За загальною кількістю одиниць вбудовані додатки набагато переважаютькількість настільних додатків. У вас може бути один або навіть кілька ПК у вашому будинку, але ви, ймовірно, використовуєте десятки вбудованих додатків щодня. Вбудовані мікроконтролери, як правило, набагато менш потужні, але і набагато менш дорогі, ніж їх побратими ПК. Різні методи програмування є невід'ємною частиною цього курсу, і ми витратимо значний час на їх вивчення.
Як C порівнюється з Python?
Якщо, як і багато студентів, які беруть цей курс, ваш фон з мовою Python, ви можете знайти деякі аспекти C трохи дивним спочатку. Деякі з них можуть здатися надмірно складними. Не лякайтеся, хоча. Ядро мови насправді просте. Python, як правило, приховує речі від програміста, в той час як C не робить, Спочатку це, здається, робить речі більш складними, і це робить для найпростіших програм, але для більш складних завдань C має тенденцію розрізати до суті питання. Багато видів даних та апаратних маніпуляцій набагато більш прямі та ефективні в C, ніж на інших мовах. Один з практичних міркувань полягає в тому, що C є компільованою мовою, тоді як більшість версій Python по суті інтерпре Це означає, що є додатковий крок в циклі розробки, але вийшла складена програма набагато ефективніше. Розберемо, чому це так відбувається трохи пізніше.
Як C порівнюється з мовою асемблера?
Асамблея традиційно використовується, коли кодовий простір і швидкість мають першорядне значення. Роки тому практично всі вбудовані роботи виконувалися при складанні. Оскільки мікроконтролери збільшилися в потужності, а компілятори C покращилися, таблиці вийшли. Мінус збірки тепер важить проти нього. Асамблея специфічна для процесора, неструктурована, не стандартизована, не особливо проста для читання чи запису. C тепер пропонує аналогічні характеристики продуктивності до збірки, але з усіма перевагами сучасної структурованої мови.
