언어/C++

C언어와 C++ 차이점

CodeHunst 2023. 8. 27. 16:33

 

두언어의 가장 큰 차이는 C언어는 절차지향 프로그래밍(Procedure Oriented Programming)이고,

C++언어는 객체지향 프로그래밍(Object Oriented Programming)이라는 것이다. 

 

절차지향 프로그래밍이란? 

프로그램 전체가 유기적으로 연결되도록 만드는 프로그래밍

일이 진행되는 방식으로 코드를 구현하면 된다.

계산이 많은 작업 등에 쓰인다.

 

객체지향 프로그래밍이란?

객체의 관점에서 프로그래밍을 하는 것

OOP는 객체를 기준으로 코드를 나누어 구현하고, 객체들의 유기적인 관계를 통해서 프로세스가 진행된다.

객체는 '메소드와 변수'의 묶음

 

  C언어 C++
장점 컴퓨터의 처리구조와 유사해 실행속도가 빠름

효율성이 높고 간결

문법이 간결

Low level 프로그래밍에 사용(하드웨어 직접 제어 프로그래밍 가능)

이식성이 좋음
코드의 재활용성이 높음

객체지향 프로그래밍
(캡슐화, 상속성, 다형성, 추상화)

구조화 되어있어 오류 수정하기 쉬움

이식성이 좋고 유연함
단점 유지보수가 어려움

실행 순서가 정해져 있어 코드의 순서가 바뀌면 동일한 결과를 보장하기 어려움

디버깅이 어려움

객체지향언어로 객체의 역할과 기능을 이해해야 하므로 복잡함

절차지향언어보다 속도가 느림

메모리가 안전하지 않음
사용 시스템 프로그래밍
임베디드 시스템
디바이스 드라이버

저수준 프로그래밍
혹은
성능과 효율성이 중요한 애플리케이션

운영체제
실시간 시스템
데스크톱 애플리케이션
웹 에플리케이션
게임 개발

상위 수준의 프로그래밍

 

 

 

 

 

 

 

[참고]

https://shung2.tistory.com/923

 

C언어와 C++언어의 차이점

C와 C++는 소프트웨어 개발에 일반적으로 사용되는 두 가지 프로그래밍 언어입니다. C와 C++는 몇 가지 유사점을 공유하지만 구문, 기능 및 사용법 측면에서 몇 가지 주요 차이점도 있습니다. 구문

shung2.tistory.com

 

https://se-jung-h.tistory.com/entry/CS-%EC%A7%80%EC%8B%9D-C%EC%99%80-C%EC%9D%98-%EC%B0%A8%EC%9D%B4

 

CS 지식 / C와 C++의 차이

C와 C++의 차이 두언어의 차이는 C언어는 절차지향 프로그래밍(Procedure Oriented Programming)이고 C++언어는 객체지향 프로그래밍(Object Oriented Programming)이라는 것이다. C++은 C를 발전시켜 만든 언어이기

se-jung-h.tistory.com