Ch (компьютерное программирование) - Ch (computer programming)
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
Оригинальный автор (ы) | Гарри Х. Ченг |
---|---|
Разработчики) | SoftIntegration, Inc. |
изначальный выпуск | 1 октября 2001 г. |
Стабильный выпуск | 8.0.0 / 19 ноября 2017 г. |
Написано в | C |
Операционная система | Windows, OS X, Linux, AIX, HP-UX, Солярис (SPARC и x86), QNX, FreeBSD |
Платформа | x86, SPARC |
Доступно в | английский |
Тип | Интегрированная среда развития |
Лицензия | Проприетарное программное обеспечение Стандартная версия: бесплатное ПО Студенческое издание: бесплатное ПО для студентов Профессиональная версия: пробное ПО на 30 дней |
Интернет сайт | www |
Ch /ˌsяˈeɪtʃ/ проприетарный кросс-платформенный C и C ++ устный переводчик и среда языка сценариев, первоначально разработанная Гарри Х. Ченгом как язык сценариев для начинающих, чтобы изучать математику, вычисления, числовой анализ (числовые методы) и программирование на C / C ++. Ch теперь разрабатывается и продается SoftIntegration, Inc. Студенческая версия находится в свободном доступе. Ch Professional Edition для Raspberry Pi бесплатен для некоммерческого использования.
Ch может быть встроен в прикладные программы C / C ++. Он имеет функции числовых вычислений и графического построения графиков. Ch - это комбинированная оболочка и IDE.[1] Оболочка Ch сочетает в себе функции общей оболочки и языка C.[2] ChIDE обеспечивает быструю навигацию по коду и символьную отладку. Он основан на встроенных Ch, Scite и Scintilla.[3][4]
Ch написан на C и работает на Windows, Linux, macOS, FreeBSD, AIX, Солярис, QNX, и HP-UX. Он поддерживает C90 и основные функции C99, но не поддерживает полный набор функций C ++. Комплексное число C99, арифметика с плавающей запятой IEEE-754 и массив переменной длины функции поддерживались в Ch, прежде чем они стали частью C99 стандарт.[5][6][7][8] Статья опубликована Новости компьютерных реселлеров (CRN ) назвал Ch выделяющимся среди виртуальных машин на основе C своей функциональностью и доступностью сторонних библиотек.[9]
Ch имеет множество инструментов, расширяющих его функции. Например, Ch Mechanism Toolkit используется для проектирования и анализа часто используемых механизмов, таких как четырехзвенная связь, пятизвенная связь, шестиступенчатая связь, кривошипно-скользящий механизм и система кулачкового толкателя.[10] Ch Control System Toolkit используется для моделирования, проектирования и анализа линейно-инвариантных во времени (LTI) систем управления с непрерывным или дискретным временем.[11] Оба набора инструментов включают исходный код.
Ch теперь используется и интегрирован в учебные программы многих средних школ и университетов для преподавания вычислений и программирования на C / C ++.[12][13][14][15][16][17][18] Ch был интегрирован в бесплатную C-STEM Studio, платформу для обучения вычислениям, науке, технологиям, инженерному делу и математике (C-STEM) с помощью робототехники. C-STEM Studio разработана Центром интегрированных вычислений и обучения STEM Калифорнийского университета в Дэвисе (C-STEM). Он предлагает учебную программу для учеников K-12.
Ch поддерживает LEGO Mindstorms NXT и EV3, Arduino, Linkbot, Finch Robot, RoboTalk и Raspberry Pi, Pi Zero и ARM для программирования и обучения роботов.[19][20][21] Он также может быть встроен в LabVIEW Платформа системного проектирования и среда разработки.[22]
Функции
Ch поддерживает стандарты ISO 1999 г. (C99) и классы C ++. Это надмножество C с классами C ++. Поддерживаются несколько основных функций C99, таких как комплексные числа, массивы переменной длины (VLA), арифметика с плавающей запятой IEEE-754 и общие математические функции. Также поддерживается спецификация широких символов в Приложении 1 для C90.
Функции C ++, доступные в Ch, включают:
- Функции-члены
- Смешанный код и декларация
- В это -> указатель
- Тип ссылки и передача по ссылке
- Преобразование типов в функциональном стиле
- Классы
- Частные / общедоступные данные и функции в классах. Ch совместим с C ++ в том смысле, что по умолчанию члены определения класса считаются частными до тех пор, пока не будет дано «публичное» объявление.
- Статический член класса / структуры / объединения
- Функции-члены Const
- Операторы new и delete
- Конструкторы и деструкторы
- Полиморфные функции
- Оператор разрешения области видимости:
- Функции ввода-вывода cout, cerr и cin с endl
- Аргументы за вариативные функции необязательны
Ch поддерживает классы на C ++ с дополнительными возможностями, включая:
- Классы внутри функций-членов
- Вложенные функции с классами
- Передача функции-члена в аргумент функции типа указатель на функцию
Ch может взаимодействовать с существующими библиотеками C / C ++ и вызывать функции C / C ++ из сценария Ch.[23]Как интерпретатор C / C ++, Ch можно использовать в качестве обработчика сценариев и языка расширения для приложений. Указатели на массивы или переменные могут передаваться и совместно использоваться как в C-скомпилированном, так и в Ch скриптовом контексте. Одним из примеров встроенного скриптового приложения Ch является Mobile-C, который использовался для совместной визуализации модели распределенной сетки.[24][25][26]
Ch имеет встроенный строковый тип (string_t) для автоматического выделения и отмены выделения памяти. Он поддерживает псевдонимы оболочки, историю, конвейер и т. Д.[27][28]
Ch имеет встроенные функции графического построения 2D / 3D и вычислительные возможности. массивы для численных вычислений. 2D линейное уравнение формы б = А * х может быть записано дословно в гл.[29]
Смотрите также
Рекомендации
- ^ Вирарагхаван, Шриранга (2013). "Введение в Ch: Реализация преобразователя температуры в Ch". ComputerWorld. Цитировать журнал требует
| журнал =
(помощь) - ^ Ch Shell
- ^ Ch IDE
- ^ Ван, Гэри (2002). «Ch решает проблемы переносимости». IEEE Spectrum. 39 (6): 59. Дои:10.1109 / MSPEC.2002.1049264.
- ^ Ченг, Гарри (1993). «Работа с комплексными числами на языке программирования Ch». Научное программирование: 76–106.
- ^ Ченг, Гарри (1993). "Научные вычисления на языке программирования Ch". Научное программирование: 49–75. Цитировать журнал требует
| журнал =
(помощь) - ^ Ченг, Гарри (1995). «Расширение C и FORTRAN для автоматизации проектирования». ASME Trans., Журнал механического проектирования: 390–395. Цитировать журнал требует
| журнал =
(помощь) - ^ Ченг, Гарри (1995). «Расширение C массивами переменной длины». Компьютерные стандарты и интерфейсы. 17 (4): 375–406. Дои:10.1016 / 0920-5489 (95) 00007-H.[мертвая ссылка ]
- ^ Морехон, Марио (2006). "Ch Language Rivals Java Functionality". CRN. Цитировать журнал требует
| журнал =
(помощь) - ^ Ченг, Гарри (2006). «Объектно-ориентированный дизайн и анализ интерактивных механизмов». Разработка с помощью компьютеров. 21 (3): 237–246. Дои:10.1007 / s00366-005-0008-4.
- ^ Чжу, Юн (2003). «Объектно-ориентированный программный комплекс для проектирования и анализа интерактивных систем управления». Журнал вычислительной техники и информатики в инженерии. 3 (4): 366–367. Дои:10.1115/1.1630815.
- ^ Ченг, Гарри (2009). «C для курса». Журнал ASME по машиностроению: 50–52. Цитировать журнал требует
| журнал =
(помощь) - ^ Хубер, Том (2010). «Введение в C и Ch: ваш универсальный магазин для научных вычислений». Вычислительная техника в науке и технике. 12 (4): 7. Дои:10.1109 / MCSE.2010.82.
- ^ Лю, Ли; Ван, Чжаоцин; Цзян, Сюйшэн (2010). «Обучение программированию на основе привязки, встроенное в платформу Ch». Обучение программированию на основе привязки, встроенное в платформу Ch. Мехатроника, встроенные системы и приложения (MESA), Международная конференция IEEE / ASME. С. 49–52. Дои:10.1109 / MESA.2010.5552033. ISBN 978-1-4244-7101-0.
- ^ Фурман, Б .; Верц, Э. (2010). Материалы Международной конференции IEEE / ASME 2010 по мехатронным и встроенным системам и приложениям. Мехатроника, встроенные системы и приложения (MESA), Международная конференция IEEE / ASME. С. 70–75. Дои:10.1109 / MESA.2010.5552091. ISBN 978-1-4244-7101-0.
- ^ Чжуан, Хун; Ван, Чжао-цин (2009). "Опыт использования Ch для обучения компьютерному программированию на C". Компьютерное образование: TP311.11–4. CKNI: ВС: JYJS.0.2009-07-016. Цитировать журнал требует
| журнал =
(помощь) - ^ Ван, Ронг (2009). "Изучение методики обучения программированию на языке C на платформе Ch". Журнал педагогического университета Вэйнань: TP312.1–4. CNKI: ВС: WOLF.0.2009-05-018. Цитировать журнал требует
| журнал =
(помощь) - ^ Стопфорт, Риан (2013). «Преподавание и программирование с Ch для высшего инженерного образования мехатроники». 2013 6-я конференция по робототехнике и мехатронике (Роб Мех). Конференция по робототехнике и мехатронике (RobMech). С. 146–149. Дои:10.1109 / РобоМех.2013.6685507. ISBN 978-1-4799-1518-7.
- ^ ч робот
- ^ зяблик
- ^ ch малина и рука[постоянная мертвая ссылка ]
- ^ "Внедрение языка интерпретатора C / C ++ в LabVIEW для написания сценариев".
- ^ Уилсон, Мэтью (2004). "Open-RJ and Ch". Журнал доктора Добба.
- ^ Ченг, Гарри (2009). «Ускорение разработки программного обеспечения с использованием встроенных сценариев». Журнал доктора Добба. п. 8.
- ^ Ван, Ли-ронг; Бо, Йо; Хагивара, я (2009). 2009 10-я Международная конференция IEEE по автоматизированному промышленному дизайну и концептуальному дизайну. Компьютерный промышленный дизайн и концептуальный дизайн, 2009. CAID & CD 2009. 10-я Международная конференция IEEE. С. 1127–1132. Дои:10.1109 / CAIDCD.2009.5375178. ISBN 978-1-4244-5266-8.
- ^ Ван, Ли-ронг; Бо, Йо; Хагивара, Ичиро (2009). Совместное упрощение 3D-модели сетки на основе агентов. Cdve'09. CDVE'09 Труды 6-й международной конференции по совместному проектированию, визуализации и инженерии. С. 325–328. ISBN 9783642042645.
- ^ Кэмпбелл, Мэтт (2003). "Ch, A C / C ++ Interpreter - Новые возможности для людей, которым нравится C и Unix". MACTECH, журнал технологий Apple. Цитировать журнал требует
| журнал =
(помощь) - ^ Ченг, Гарри (2010). Языковая среда Ch (6.3 изд.). Дэвис, Калифорния: SoftIntegration, Inc.
- ^ Глассбороу, Фрэнсис (2001). "Языковая среда Ch, версия 2.0". Журнал C Vu: 36–37. Цитировать журнал требует
| журнал =
(помощь)
дальнейшее чтение
- Хеллер, Мартин (2001). "Языковая среда Ch". Байт. Архивировано из оригинал 16 ноября 2001 г. Цитировать журнал требует
| журнал =
(помощь) - Ченг, Гарри (2002). «C99 и числовые вычисления». Журнал доктора Добба. С. 28–34.
- Ченг, Гарри (2006). "Ch: Интерпретатор C / C ++ для скриптовых вычислений". Журнал доктора Добба. С. 6–12.
- Ченг, Гарри (2009). C Для инженеров и ученых, интерпретационный подход. Макгроу-Хилл. ISBN 978-0-07-729046-7.
- Ченг, Гарри (2011). C Для инженеров и ученых (Китайское изд.). Пресса о высшем образовании. ISBN 978-0-07-729046-7.