Ch(컴퓨터 프로그래밍)

Ch (computer programming)
Ch C/C++ 인터프리터
원저작자해리 H.
개발자Soft Integration, Inc.
초기 릴리즈2001년 10월 1일, 20년 전(2001-10-01)
안정된 릴리스
8.0.0 / 2017년 11월 19일, 4년 전(2017년 11월 19일)
기입처C
운영 체제Windows, OS X, Linux, AIX, HP-UX, Solaris(SPARC 및 x86), QNX, FreeBSD
플랫폼x86, SPARC
이용가능기간:영어
유형통합 개발 환경
면허증.독자적인 소프트웨어
스탠다드 에디션:프리웨어
Student Edition: 학생용 프리웨어
Professional Edition : 30일간 트라이얼웨어
웹 사이트www.softintegration.com

Ch / ː si ˈ e ʃ t is / - 、 C + + interpre-terter인터프리터스크립트 언어 환경입니다.원래는 Harry H가 설계했습니다.Cheng은 초보자용 스크립트 언어로서 수학, 컴퓨팅, 수치 해석(숫자 방법), 프로그래밍을 C/C++로 학습합니다.Ch는 현재 Soft에 의해 개발 및 판매되고 있습니다.인테그레이션학생판은 무료로 구할 수 있다.라즈베리 파이용 Ch Professional Edition은 비상업적인 용도로 무료로 사용할 수 있습니다.

Ch는 C/C++ 어플리케이션 프로그램에 포함될 수 있습니다.수치 연산 기능과 그래픽 플롯 기능을 갖추고 있습니다.Ch는 셸과 [1]IDE의 조합입니다.Ch 쉘은 공통 셸과 C [2]언어의 특징을 결합합니다.CHIDE는 빠른 코드 탐색과 심볼릭 디버깅을 제공합니다.내장 Ch, Scite 및 Scintilla를 [3][4]기반으로 합니다.

Ch는 C로 작성되며 Windows, Linux, macOS, FreeBSD, AIX, Solaris, QNXHP-UX에서 실행됩니다.C90 및 C99의 주요 기능을 지원하지만 C++의 모든 기능을 지원하지는 않습니다.C99 복소수, IEEE-754 부동소수점 연산 및 가변장 어레이 기능은 C99 [5][6][7][8]표준의 일부가 되기 전에 Ch에서 지원되었습니다.CRN(Computer Reseller News)이 발행한 기사에서는 Ch가 C 기반 가상 머신 중 그 기능과 서드파티 [9]라이브러리의 가용성에 주목하고 있습니다.

Ch는 그 기능을 확장하는 많은 공구 키트를 가지고 있다.예를 들어 Ch Mechanism Toolkit은 4바 링크, 5바 링크, 6바 링크, 크랭크 슬라이더 메커니즘 및 캠 팔로워 시스템 [10]등 일반적으로 사용되는 메커니즘의 설계 및 분석에 사용됩니다.Ch Control System Toolkit은 연속 시간 또는 이산 시간 선형 시간 불변(LTI) 제어 [11]시스템의 모델링, 설계 및 분석에 사용됩니다.두 도구 키트 모두 소스 코드를 포함합니다.

Ch는 현재 많은 고등학교와 대학에서 C/C++[12][13][14][15][16][17][18]에서 컴퓨팅과 프로그래밍을 가르치기 위해 커리큘럼에 사용되고 있습니다.Ch는 로봇 공학으로 컴퓨팅, 과학, 기술, 엔지니어링 및 수학(C-STEM)을 학습하기 위한 플랫폼인 무료 C-STEM Studio에 통합되었습니다.C-STEM Studio는 UC Davis Center for Integrated Computing and STEM Education(C-STEM)에 의해 개발되었습니다.그것은 K-12 학생들을 위한 커리큘럼을 제공한다.

Ch는 로봇 프로그래밍 및 [19][20][21]학습을 위해 LEGO Mindstorms NXT 및 EV3, Arduino, Linkbot, Finch Robot, RoboTalk 및 Rasberry Pi, Pi Zero, ARM을 지원합니다.또한 LabVIEW 시스템 설계 플랫폼 및 개발 [22]환경에 내장할 수도 있습니다.

특징들

Ch는 1999 ISO C Standard(C99) 및 C++ 클래스를 지원합니다.C++ 클래스가 있는 C의 슈퍼셋입니다.복소수, VLA(Variable Length Array), IEEE-754 부동소수점 연산, 범용 수학 함수 등 C99의 몇 가지 주요 기능이 지원됩니다.C90용 부록1 의 와이드 문자 사양도 서포트되고 있습니다.

Ch에서 사용할 수 있는 C++ 기능은 다음과 같습니다.

  • 멤버 함수
  • 코드와 선언의 혼재
  • -> 포인터
  • 참조 유형 및 통과 기준
  • 함수형 변환
  • 개인/공용 데이터 및 클래스 함수.Ch는 기본적으로 'public' 선언이 제공될 때까지 클래스 정의의 멤버는 비공개로 간주된다는 점에서 C++와 호환됩니다.
  • 클래스/구조/연합의 정적 멤버
  • 구성원 함수
  • 새 연산자 및 삭제 연산자
  • 컨스트럭터 및 디스트럭터
  • 다형 함수
  • 스코프 분해능 연산자:
  • I/O 기능은 endl을 사용하여 cout, cerr 및 cin 기능을 수행합니다.
  • 가변 함수의 인수는 옵션입니다.

Ch는 다음과 같은 기능이 추가된 C++ 클래스를 지원합니다.

  • 멤버 함수 내부 클래스
  • 클래스가 포함된 중첩된 함수
  • 함수 포인터 형식의 인수에 멤버 함수를 전달하는 중

Ch는 기존 C/C++ 라이브러리와 상호 작용하여 Ch [23]스크립트에서 C/C++ 함수를 호출할 수 있습니다.C/C++ 인터프리터로서 Ch는 애플리케이션의 스크립트 엔진 및 확장 언어로 사용할 수 있습니다.배열 또는 변수에 대한 포인터는 C 컴파일된 컨텍스트와 Ch 스크립트 컨텍스트 모두에서 전달 및 공유할 수 있습니다.임베디드 Ch 스크립트애플리케이션의 예로는 분산 메쉬 [24][25][26]모델의 공동 시각화에 사용되고 있는 Mobile-C가 있습니다.

Ch에는 자동 메모리 할당 및 할당 해제를 위한 문자열 유형(string_t)이 내장되어 있습니다.쉘 에일리어스, 이력, 배관 [27][28]등을 지원합니다.

Ch는 2D/3D 그래픽 그리기 기능과 수치 컴퓨팅을 위한 계산 어레이를 내장하고 있습니다.b = A*x 형식2D 선형 방정식은 [29]Ch로 말 그대로 쓸 수 있다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ Veeraraghavan, Sriranga (2013). "An introduction to Ch: Implementing a temperature converter in Ch". ComputerWorld. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  2. ^ Ch Shell
  3. ^ 채널 IDE
  4. ^ Wang, Gary (2002). "Ch Solves Portability Headaches". IEEE Spectrum. 39 (6): 59. doi:10.1109/MSPEC.2002.1049264. S2CID 32477309.
  5. ^ Cheng, Harry (1993). "Handling of Complex Numbers in the Ch Programming Language". Scientific Programming: 76–106.
  6. ^ Cheng, Harry (1993). "Scientific Computing in the Ch Programming Language". Scientific Programming: 49–75. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  7. ^ Cheng, Harry (1995). "Extending C and FORTRAN for Design Automation". ASME Trans., Journal of Mechanical Design: 390–395. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  8. ^ Cheng, Harry (1995). "Extending C with arrays of variable length". Computer Standards & Interfaces. 17 (4): 375–406. doi:10.1016/0920-5489(95)00007-H.[데드링크]
  9. ^ Morejon, Mario (2006). "Ch Language Rivals Java Functionality". CRN. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  10. ^ Cheng, Harry (2006). "Object-Oriented Interactive Mechanism Design and Analysis". Engineering with Computers. 21 (3): 237–246. doi:10.1007/s00366-005-0008-4. S2CID 16996625.
  11. ^ Zhu, Yong (2003). "An Object-Based Software Package for Interactive Control System Design and Analysis". Journal of Computing and Information Science in Engineering. 3 (4): 366–367. doi:10.1115/1.1630815. S2CID 17908643.
  12. ^ Cheng, Harry (2009). "C for the Course". ASME Mechanical Engineering Magazine: 50–52. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  13. ^ Huber, Tom (2010). "An Introduction to C and Ch: Your One-Stop Shop for Scientific Computing". Computing in Science & Engineering. 12 (4): 7. doi:10.1109/MCSE.2010.82.
  14. ^ Liu, Li; Wang, Zhaoqing; Jiang, Xusheng (2010). "Anchor-based promgramming teaching embedded with Ch platform". Anchor-based programming teaching embedded with Ch platform. Mechatronics and Embedded Systems and Applications (MESA), IEEE/ASME International Conference. pp. 49–52. doi:10.1109/MESA.2010.5552033. ISBN 978-1-4244-7101-0. S2CID 2063024.
  15. ^ Furman, B.; Wertz, E. (2010). Proceedings of 2010 IEEE/ASME International Conference on Mechatronic and Embedded Systems and Applications. Mechatronics and Embedded Systems and Applications (MESA), IEEE/ASME International Conference. pp. 70–75. doi:10.1109/MESA.2010.5552091. ISBN 978-1-4244-7101-0. S2CID 12764358.
  16. ^ Zhuang, Hong; Wang, Zhao-qing (2009). "Experience of Using Ch for Teaching Computer Programming in C". Computer Education: TP311.11–4. CKNI:SUN:JYJS.0.2009-07-016. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  17. ^ Wang, Rong (2009). "Study of C Language Programming Teaching Method on platform Ch". Journal of Weinan Teachers University: TP312.1–4. CNKI:SUN:WOLF.0.2009-05-018. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  18. ^ Stopforth, Riaan (2013). "Teaching and programming with Ch for tertiary-level mechatronics engineering education". 2013 6th Robotics and Mechatronics Conference (Rob Mech). Robotics and Mechatronics Conference (RobMech). pp. 146–149. doi:10.1109/RoboMech.2013.6685507. ISBN 978-1-4799-1518-7. S2CID 23172598.
  19. ^ ch로봇
  20. ^ 핀치
  21. ^ 산딸기와 팔뚝을 끼다[영구 데드링크]
  22. ^ "Embedding a C/C++ Interpreter Ch into LabVIEW for Scripting".
  23. ^ Wilson, Matthew (2004). "Open-RJ and Ch". Dr. Dobb's Journal.
  24. ^ Cheng, Harry (2009). "Speeding-Up Software Development Using Embedded Scripting". Dr. Dobb's Journal. p. 8.
  25. ^ Wang, Li-rong; Bo, Yo; Hagiwara, I (2009). 2009 IEEE 10th International Conference on Computer-Aided Industrial Design & Conceptual Design. Computer-Aided Industrial Design & Conceptual Design, 2009. CAID & CD 2009. IEEE 10th International Conference. pp. 1127–1132. doi:10.1109/CAIDCD.2009.5375178. ISBN 978-1-4244-5266-8. S2CID 39307433.
  26. ^ Wang, Li-rong; Bo, Yo; Hagiwara, Ichiro (2009). An agent based collaborative simplification of 3D mesh model. Cdve'09. CDVE'09 Proceedings of the 6th international conference on cooperative design, visualization, and engineering. pp. 325–328. ISBN 9783642042645.
  27. ^ Campbell, Matt (2003). "Ch, A C/C++ Interpreter – New possibilities for people who like C and Unix". MACTECH, the journal of Apple technology. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)
  28. ^ Cheng, Harry (2010). The Ch Language Environment (6.3 ed.). Davis, CA: SoftIntegration , Inc.
  29. ^ Glassborow, Francis (2001). "The Ch Language Environment Version 2.0". C Vu Magazine: 36–37. {{cite journal}}:Cite 저널 요구 사항 journal=(도움말)

추가 정보

외부 링크