기타 강좌

※본 내용은 제가 학교에서 배웠던것을 정리하여 올리는 것입니다.

틀린점이나 이상한 부분은 댓글로 남겨주시기 바랍니다.

 

C언어란..?

 

= C 프로그래밍 언어는 1972년에 미국 벨(Bell) 연구소의 시스템 프로그래머인

데니스 리치(Dennis Richie)가 개발한 시스템 기술용 언어 입니다.

당시엔 어셈블리어로 UNIX 운영체제가 개발되어 있었는데

어셈블리어는 시스템간의 호환성이 없어서 좀더 강력하게 설계된 언어가 바로 C언어이고,

실제 UNIX 운영체제의 90% 이상이 C언어로 이루어졌습니다.

 

현재도 C언어는 연산자(Operator) , 자료형(Data type) , 함수 라이브러리(Function Library)등이

다양하고 이식성이 높아 널리 사용되어지고 있는 프로그래밍 언어 입니다.

 

 

(1) C 언어의 특징

 

① C 언어는 하드웨어를 제어할 수 있는 저급 언어로서의 기능을 갖고 있으며,

고급언어로서의 기능을 가지고, 이식성이 뛰어나다.

 

② 함수 단위로 프로그램을 작성함으로써 구조적으로 프로그램을 작성할 수 있다. (모듈화가능)

 

③ 간결한 문법 (대,소 문자 구분) , 다양한 연산자 , 데이터의 형 변환을 제공

 

④ 기억 장소를 효율적으로 관리하므로 기억장소의 낭비를 줄여 실행 속도가 빠르다.

 

 

(2) C 프로그램의 구조

 

일반적인 C 프로그램의 구조는 다음과 같다.

#include <헤더 파일>

void main( )         // 프로그램 시작 함수

{                          // 프로그램(함수) 시작 괄호

     선언문 :

     명령문 :        / * 프로그램(함수) 본체 * /

     명령문 :

          ·

          ·

}                         // 프로그램(함수) 끝 괄호

 

#include <헤더 파일> : 선행 처리기 로서 프로그램이 실행되기 전에 준비 작업을 한다.

 

main( ) : C 프로그램은 반드시 하나의 main( ) 함수를 가져야 하며, main( ) 이 프로그램의

어디에 쓰이든 프로그램은 항상 main( ) 함수부터 실행된다. main( ) 함수는 함수를 구성하는

몸체가 있는데, 반드시 { 로 시작해서 } 로 끝난다.

main( ) 함수의 몸체에는 프로그램 실행에 필요한 변수와 문장 등을 기술한다.

 

 

(ㄱ)프로그램 작성시 규칙

 

영문 소문자를 기본으로 작성한다. (실제로 식별어를 제외한 모든 예약어, 표준 함수는 모두 소문자로 이루어짐)

 

식별어는 사용자가 임의대로 만들어서 사용할 수 있는 것 (정해진 규칙에 따라 만들어서 사용해야 한다.)

 

한 문장이 끝날 때마다 반드시 세미콜론( ; ) 으로 문장의 끝을 표시한다.

 

 

주석문 이란..?

 

= 주석문은 프로그램에 대한 보충 설명이나 문장에 대한 설명을 할 때 사용되는 것으로 프로그램 실행과는 무관하다.

 

 

일단 이것으로 첫번째 C언어 강좌를 마치겠습니다.

---------------------------------------------------------------------------------------

 

제가 하는 강좌는 아주 기초적인 것들만 다룰 것입니다.

아직 C언어는 어렵거든요..ㅎㅎ

Who's 완폐남™

?

닉네임 : 완폐남™

직  책 : 관리자

가입일 : 2009-03-13

Comment '5'
  • profile
    we0 2011.08.01 18:37

    아니 무슨 소리야?!

  • ?
    허걱 2011.08.05 01:44

    오!!  드디어 강의가 나오는군요! +_+

    하나도 안빼고 경청(경독?)하겠습니다!!  ^^

  • ?
    완폐남™ 2011.08.05 09:53

    아주 기초적인거지만

    열심히 해보겠습니다~

  • profile
    Lathrion 2011.08.07 14:57

    특징이나 글 자체에 전문용어가 너무 많이 들어가 있어서 초심자들에게 도움이 안될겁니다.

    몇가지 보충해드릴게요.

     

    함수 라이브러리 ::: 프로그래밍 언어를 사용할때 대체로 "명령"이라는 문구를 제공하는 파일입니다.

    예를들면 당신이 print "A"라고 씀으로써 화면에 A라는 글자를 띄울수 있다면 이 print라는 명령어가 어떤 명령어인지

    미리 프로그래밍 해둔 곳을 함수 라이브러리라고 합니다. 컴퓨터는 지능적인 기계가 아니므로 당신이 "컵을 가져와라"

    라고 하더라도 컵을 어떻게 집는지, 어디있는지, 뭘 집어야되는지, 집을때는 얼마나 세게 집어야되는지 등등을 죄다 미리

    컴퓨터에게 알려줘야됩니다. 따라서 프로그래머가 자주 사용하는 명령어는 컴파일러에서 이 함수 라이브러리를 지원하고

    당신이 사용하는 컴파일러나 운영체제에 따라 이 함수 라이브러리의 내용이 조금씩 다릅니다.

     

    그리고 C언어의 특징중 "④ 기억 장소를 효율적으로 관리하므로 기억장소의 낭비를 줄여 실행 속도가 빠르다."

    이것은 C언어와는 거리가 멉니다. 관리하는것은 운영체제쪽이므로 효율적인 관리는 운영체제를 따져야되구요.

    C++와는 다르게 C는 그다지 메모리와 관련된 효율적인 문법은 제공하지 않습니다.

     

    그리고 헤더 파일 설명이 잘못되었는데 프로그램이 실행되기 전에 준비작업을 하는게 아니라 컴파일시에

    헤더 파일들의 내용을 참고하여 명령어들을 기계어로 번역합니다. C언어의 stdio.h라는 헤더 파일을 사용하기 위해서는

     현재 작성하는 코드 맨 위에 #include <stdio.h>  이 문구를 작성함으로써 컴파일시에 이런 헤더 파일을 참고하라 라고

    명령할수 있고 이런 행위를 "헤더 파일을 포함하다" 라고 합니다. 만일 저 헤더파일을 포함하지 않으면 printf나 scanf등의

    기본 입출력 함수(명령)들이 존재하지 않는 문구라고 뜨며 컴파일 에러가 발생합니다.

     

    작성자분의 성의를 무시하는것은 아니지만 일부 잘못된 내용이 있어서 불가피하게 수정하는게 옳은 부분만 썼구요.

     

    무엇보다 컴파일러를 소개 안하신...;

  • ?
    완폐남™ 2011.08.07 18:19

    라시온님 보충 감사합니다.

    제가 배운책을 고대로 배껴 쓰는 정도이기에

    제 실력이 드러나네요..


List of Articles
분류 제목 글쓴이 날짜 조회 수
Vegas Pro 베가스 강좌 목록 아방스 2017.09.28 886
파이널컷X 파컷 강좌 목록 아방스 2017.06.18 757
기타 [파이썬] 리스트(list) )5( 4 - 하늘 - 2009.09.07 3140
기타 프로그래밍 스킴 Scheme 2 프로그래밍한 걸 exe파일 만들어 배포하기! 2 file 정체불명 2010.10.02 3156
C언어 C언어 기초 - 1. 개요 5 완폐남™ 2011.08.01 3183
기타 캐릭터 생성에 도움 되는글? 10 아방스 2008.08.26 3222
C언어 [C언어] printf()함수의 변환 문자 1 [Dark].Angel 2009.01.14 3242
기타 게임 기획에 관한 기법들 3 아방스 2010.09.15 3251
웹디자인 관련 웹 디자인 무료 버튼 템플릿! - Web Buttons Vector Graphic file 아방스 2011.12.07 3251
시네마4D [플러그인] HDRI Light Kit Pro version 1.5 file 아방스 2010.11.22 3256
기타 PCSX2 자체 캡처기능으로 캡처한 동영상 인코딩하기 file Alkaid 2012.09.09 3257
웹디자인 관련 웹 디자인 무료 버튼 템플릿! - PSD Download Buttons file 아방스 2011.12.07 3279
기타 오류해결법 2-비스타로 알피지 만들기 XP게임하기 3 21thcentuary 2008.09.29 3324
에프터 이펙트 붓 칠해지는 느낌의 자막 1 file 아방스 2011.02.27 3340
기타 - 하늘 -의 리눅스 book! [ <2>리눅스를 배우려면?][수정] 8 file - 하늘 - 2009.08.01 3357
시네마4D 시네마4D R12 버전 한글 도움말 파일 아방스 2011.04.16 3362
어도비 프리미어 [프리미어프로] 시계 애니메이션 만들기 file 아방스 2017.01.08 3393
기타 그림판으로 아이콘 만들기 4 검은별 2009.07.13 3395
XpressEngine 댓글 알림 기본 체크 하기. 아방스 2012.01.04 3395
시네마4D [나무 의자 만들기] Model A Wooden Chair In Cinema4D 1 file 아방스 2011.04.18 3404
기타 게임 엔진 中 [렌더링 엔진] 비교 3 아방스 2011.10.24 3425
기타 해커스쿨 F.T.Z서버에 대해 궁금하신 분들은 글올려주세요... - 하늘 - 2009.08.03 3428
Board Pagination Prev 1 ... 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Next
/ 19