C는 함수적인 면으로 많이 이루어지는 반면
C++은 클레스적인 면으로 많이 이루어지죠.
C는 하나의 통괄적인 프로그램이라고 할수 있겠고, C++은 여러개로 나누어져 동작할수 있는 객체지향적 프로그램이라고 할수 있습니다 ㅇ_ㅇ;
그렇기 때문에 틀은 같아도 코딩하는 방법에 있어서는 다른 모습을 가집니다.
2006.01.09 22:48:53 (*.227.138.44)
지나가는행인
C와 C++을 분류하는 것은 개발 방식입니다. (구조적이냐 객체지향이냐죠)
초보자가 배우실때는 C++를 일단 제쳐놓고 C와 API공부하세요
그리고 후에 소스가 1000라인 10000라인 작성하고 구조적인 한계에 부딛히면 그때 C++를 배우시면 됩니다.
필요성 없이 공부하는건 의미 없습니다.
2006.01.09 23:16:51 (*.96.20.206)
excel
저도 일단 C부터 하는게 좋을꺼 같네요.
2006.01.09 23:46:48 (*.251.246.11)
까까
음.. 많은 분들이 C++은 객체지향 프로그램언어다 라고 생각하시는 것 같은데..(사실 책이며 강사들이며 다 그래요.) C++은 객체지향 개발방법으로도 개발할 수 있는 언어라고 보는쪽이 맞습니다.
2006.01.10 01:06:48 (*.49.85.185)
1ststory
까까//
C++에서 가장 큰 의미는 객체지향이죠. ㅇㅅㅇ;
그것이 C하고 C++와의 큰 차이점이기도 하구요..
안그러면 단순히 C++은 C보다 몇가지가 더 편해진 언어밖에 되지 않아요.
또한 컴퓨터로 할수 있는 대다수의 언어는 C와 C++의 형식으로 나누어진게 많습니다. 예외도 몇개 있지만..비쥬얼C같은..
대표적인 예로 윈도우즈 프로그래밍인 C에 기반한 API와 C++에 기반한 MFC가 있죠.
2006.01.10 01:58:06 (*.250.53.205)
엄
1) C++은 C에서 몇가지가 더 편해진 언어가 맞습니다. 프로그래머들에게 손에 맞는 방법은 무엇이든 쓰라고 만든 언어죠.
2) 컴퓨터로 할 수 있는 대다수의 언어는 C와 C++이 아닙니다. 현재 '상용으로' 쓰이고 있는 언어는 약 500개정도이고, 실험적으로 만들어진 언어는 약 3만개 정도로 추산하고 있습니다.
3) 비주얼C는 언어가 아닙니다. 툴이죠.
4) MFC는 Win32 API의 래퍼 클래스로 이루어진 라이브러리일 뿐입니다.
2006.01.10 02:04:30 (*.250.53.205)
엄
처음에 프로그래밍을 공부할 때는 무조건 쉬운 언어부터 배우십시오.
비주얼 베이직이나 파이썬 같은 언어가 적절하리라 생각됩니다.
2006.01.10 02:34:52 (*.147.191.57)
당근이좋아
여러분들의 열정적인 답변에 궁금증이 모두 날라간것 같습니다
감사합니다^^
2006.01.10 03:02:14 (*.49.85.185)
1ststory
엄 //
사람이 500개나 되는 언어를 당연히 다 알수가 없습니다. 그런 의미에서 공통적으로 많이 쓰이는 C와 C++부터 배우는것이 필수입니다. 왜냐면 대다수의 언어들이 C/C++로 파생된 방식의 프로그래밍의 방식을 사용하기 때문이죠.(당연히 C는 그 전의 터보C 같은 언어에서 좀더 개량된거긴 하지만, 이제 그러한 사람보다 컴퓨터에 가까운 언어는 잘 사용하지 않습니다)
나머지의 언어는 필요할때마다 그때그때 배운다는 겁니다. 필요하지 않는이상 주로 사용하지 않는 나머지 언어들을 기억할만큼 머리공간을 낭비해서도 안됩니다.
C와 C++을 알게 되면 자연스레 나머지 언어들을 쉽게 터득할수 있는 계기가 됩니다.
또한 C++이 몇가지 더 편해졌다고 C가 사용되지 않는게 아닌것처럼, C와 C++은 각각의 개성을 가지고 그에 맞춰진 언어입니다. 즉, 최대한 개발 환경에 맞춰진 언어를 사용해야 필요없는 낭비를 막을수 있죠.
또한 무조건 쉬운언어부터 배워야 한다는건 저는 반대입니다. 비주얼 베이직같은 툴을 사용하는 언어를 배울 경우 그 툴에 편해지면 나중에 더 어려운 프로그래밍을 배우는데 애로사항이 많습니다. 또한 처음부터 너무 어려운 언어를 배운다면 배우다가 쉬이 지칩니다. 그리고 비쥬얼 베이직 같은 프로그래밍의 방식은 통상적으로 잘 사용되지 않는 방식이기도 합니다. 그러한 사람에게 맞춰진 고급 언어는 툴을 쉽게 만들수 있기 때문에 간단한 프로그램에는 좋으나 복잡한 프로그램을 할수 없다는 단점이 있기도 하죠.
C를 배우면 간단한 웹언어인 자바스크립트를 배우기 쉽지만 자바 스크립트를 배우면 반대로 C를 배우는데는 많은 애로사항이 있다는것을 예로 들고 싶네요.
JAVA도 마찬가지구요.. 최소한 C++과 관련된 최소한의 지식이라도 가지고 있다면 배우는데는 어려움이 없습니다.
모든 API는 당연히 라이브러리로 이루어져 있습니다. 그것의 기반을 어디에 잡느냐죠. 당연히 MFC는 C++에 더 가까운 만큼 만큼 그에 관련된 지식이 필요합니다. OOP나 클레스 활용 방법..
2006.01.10 06:29:25 (*.107.113.189)
안군
C++은 C에 객체지향의 개념 한그릇 추가한겁니다;;;
2006.01.10 07:26:30 (*.37.11.11)
kallru
C와 C++은 많이 다른데요 -_-.. C를 배운양 보다 C++에서 배워야 하는 양이 월등히 많습니다. 당연 기능도 많구요. C++에 익숙해지면, C는 잘 못씀..
C++은 정말 강력함~!
2006.01.10 11:16:18 (*.97.133.2)
엄
1) 절대 다수의 언어는 C/C++과 전혀 관련이 없습니다. scheme 이나 ruby 같은 언어를 C만 배우면 자연스럽게 터득할 수 있다는 말은 처음 들어보는군요. 더군다나 objective-C는 C를 웬만큼 안다는 사람도 코드를 처음 보면 암호처럼 보입니다. 이런 언어가 '많이 쓰이지 않는다'고 알고 계시다면, 잘못 알고 계신 겁니다.
2) 터보C는 개발툴의 이름이지 언어의 이름이 아닙니다. 당연히 C가 터보C에서 개량되었다는 말은 어불성설이죠.
3) 프로그래밍을 처음에 어떻게 배워야하는 지는 사람에 따라 의견이 분분합니다.
4) C++에 어떤 개념이 몇그릇이나 추가되었는지는 Bjarne Stroustrup선생이 쓴 design and evolution of c++를 읽어보시기 바랍니다.
2006.01.10 16:11:53 (*.153.97.233)
kk
비슷함.... c++에선 객체지향적인(무슨말씀인지 모르시겟지만 대략 프로그래머가 접근하기 편하게 코딩하기 위한 설계?쯤으로 알아두셈...)매서드들이 가능해짐(클래스,연산자 오버로딩등이 추가됌..)......... c랑 c++문법은 아주 똑같3............. =3 =3
2006.01.10 16:13:55 (*.153.97.233)
kk
c++와 c가 많이 다르다는 분들이 계심... 분명 그건 맞는말임. c++에 추가됀 그것(객체지향)들때문이죠.
하지만 c++와 c처럼 비슷한 언어가 있을까요? c++는 정말 c에 ++를 추가한것 뿐임.... 그 추가한게 매우 강력한것일뿐...
2006.01.11 17:57:49 (*.209.134.45)
네오
제 생각엔 C와 C++은 형식만 비슷할 뿐 전혀 다른 언어라고 생각합니다. 뭐 까까님 말씀처럼 객체지향 프로그래밍을 쉽게 할 수 있는게 C++이고, ( 전에 교수님도 C로도 객체지향프로그래밍을 할 수 있다고 말씀하셨음. ) C에서 진화되어 왔다고는 하지만, 뭐랄까 패러다임, 철학등이 전혀 다르기 때문에 그냥 형식만 빌려왔지 전혀 다른 언어라고 생각하는게 접근하시는데 더 도움이 될 것 같네요. C++에서 C의 망상을 떨쳐버리기가 참 쉽지 않았던 기억도 납니다.
어떤 책에선 절차적 언어와 객체지향적 언어의 차이는 package의 차이다. 라는 말도 들어봤지만.. 뭐 크게 와닿지는 않네요.
2006.01.13 08:17:26 (*.188.105.86)
ㅡ.ㅡ
김학규님께서 추천한 TC++PL에는 C++배우기 위해서 C를 공부하는건 안좋은 것이라고 나왔습니다. C++부터 하세요
C는 함수적인 면으로 많이 이루어지는 반면
C++은 클레스적인 면으로 많이 이루어지죠.
C는 하나의 통괄적인 프로그램이라고 할수 있겠고, C++은 여러개로 나누어져 동작할수 있는 객체지향적 프로그램이라고 할수 있습니다 ㅇ_ㅇ;
그렇기 때문에 틀은 같아도 코딩하는 방법에 있어서는 다른 모습을 가집니다.