기타 강좌

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

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

 

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
C언어 정체불명의 프로그래밍 입문 main 함수작성 3 file 정체불명 2012.01.18 1721
C언어 정체불명의 프로그래밍 입문 2 1 file 정체불명 2012.01.18 1290
C언어 정체불명의 프로그래밍 입문 2 정체불명 2012.01.18 1262
XpressEngine 댓글 알림 기본 체크 하기. 아방스 2012.01.04 3395
C언어 [C 언어 강의] 데이터 입력 함수 scanf() file 마린레이 2011.11.06 1709
C언어 [C 언어 강의] 데이터 출력 함수 printf() file 마린레이 2011.10.12 1746
C언어 [C 언어 강의] 2. 프로그램의 기본 구조 마린레이 2011.10.05 1607
C언어 [C 언어 강의] 1. 프로그램 작성 방법 4 마린레이 2011.09.24 4842
C언어 C언어 기초 - 1. 개요 5 완폐남™ 2011.08.01 3183
플러그인 After effect cs 5.5 plugin 손떨림 보정 플러그인 Warp stabilize 아방스 2011.12.16 7311
플러그인 초고속 카매라 같은 효과를 만드는 Twixtor 플러그인 아방스 2011.12.16 13332
에프터 이펙트 애팩 키보드 단축키 (after effects cs5) 아방스 2011.12.15 5161
에프터 이펙트 펜툴을 이용해서 키프레임 추가,삭제 및 수정방법 아방스 2011.12.08 5204
웹디자인 관련 웹 디자인 무료 버튼 템플릿! - Wide Green Button file 아방스 2011.12.07 3526
웹디자인 관련 웹 디자인 무료 버튼 템플릿! - Web Buttons Vector Graphic file 아방스 2011.12.07 3251
웹디자인 관련 웹 디자인 무료 버튼 템플릿! - Web 2.0 Download Buttons file 아방스 2011.12.07 3575
웹디자인 관련 웹 디자인 무료 버튼 템플릿! - Sticky 3D Buttons file 아방스 2011.12.07 3024
웹디자인 관련 웹 디자인 무료 버튼 템플릿! - Simple Download Buttons file 아방스 2011.12.07 2969
웹디자인 관련 웹 디자인 무료 버튼 템플릿! - Sexy Green Download Button file 아방스 2011.12.07 2993
웹디자인 관련 웹 디자인 무료 버튼 템플릿! - Red Download Button file 아방스 2011.12.07 2829
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 Next
/ 19