Тож я знаю, що таке прагма і для чого вона використовується, але яке значення має саме слово? Я багато разів використовував його в коді, але ніколи не знав, що це слово насправді означає чи означає.
Тож я знаю, що таке прагма і для чого вона використовується, але яке значення має саме слово? Я багато разів використовував його в коді, але ніколи не знав, що це слово насправді означає чи означає.
Відповіді:
Згідно з документом, що належить уряду США (!), Що описує дизайн Ada: Обгрунтування дизайну мови програмування Ada® :
Прагма (від грецького слова, що означає дія) використовується для конкретного керування діями компілятора, але не впливає на семантику програми (загалом).
Мені подобається (останній застереження) там ...
Це перехресне посилання добре стосується он-лайн грецьких словників (наприклад, цитованих Мартіном Йорком ), де сказано, що прагма ( πράγμα , як прокоментував оригінальне запитання Асвейкау) означає :
Здається, ключовим для розуміння є слово дія, а не інформація .
У математиці та логіці прагма - це даність, факт, передумова аргументу, проблеми чи доказу, що випливає далі.
Витягнуто прямо з Вікіпедії (програмування):
В Аді директиви компілятора називаються прагмами (скорочення від "прагматична інформація").
Хоча це не явно для C, це все одно має відповісти на ваше запитання. Однак, як зазначив TJ, для цієї частини інформації не існує жодного дійсного джерела.
З давньогрецької:
прагма: зроблена справа, факт
Як і у всіх вироках, хтось намагався бути занадто розумним для свого блага. На жаль, його оригінальне значення втрачається для нас інших (якщо у вас немає під рукою Google та словника з латиноамериканської / грецької на англійську).
http://www.studylight.org/lex/grk/view.cgi?number=4229
http://www.bibletools.org/index.cfm/fuseaction/Lexicon.show/ID/G4229/pragma.htm
Оригінал (саме про це йдеться на вищезазначеній сторінці, але у мене немає копії цієї книги):
Тейєр і Сміт. "Грецький лексикон для Прагми". "Грецький лексикон Нового Завіту".
Мова програмування Ada, цілком можливо, був першим компілятором, який використав прагму для задання директив препроцесора. Слово використовувалось як скорочена форма "прагматичної інформації"
Коли мова програмування С була розроблена, вона спочатку не мала директив pragma, але була швидко додана до специфікації для підтримки користувацьких функцій компілятора. (тобто. #pragma optimization_level для компілятора intel C ++)
З тих пір багато мов впроваджують прагму в тій чи іншій формі, включаючи C #, але вони часто обмежуються тим, що створюють попередження про час та підказки щодо оптимізації.
Однією з найпоширеніших і корисних прагм у нестандартних C та C ++ є # pragma, яка колись використовувалась для зазначення того, що файл повинен бути включений лише один раз.