1강 정리

cog·2020년 4월 22일
0

c언어

목록 보기
1/1

1강 C언어의 개요

1) C언어의 정의, 역사, 특징
2) C 프로그램의 작성 및 준비
3) C 프로그램의 구성
4) 에러와 경고

C언어의 정의: 프로그래밍 언어

-프로그래밍 언어 : 사람과 컴파일러가 소통할 수 있도록 약속된 형태의 언어

-기계어, 어셈블리어,C,C++,C#,JAVA,PHP 등
사람 : 인간의 언어, c언어(로 컴파일러에 전달) 사용가능
컴파일러 : c언어, 기계어(로 컴퓨터에 전달) 사용가능
컴퓨터 : 기계어 사용가능

  • 컴파일러
    소스 프로그램을 한번에 기계어로 변환시킴
    프로그래밍 언어로 작성된 프로그램을 컴퓨터가 이해할 수 있도록
    기계어로 번역해주는 번역기

    어셈블러 : 기호로 표현된 어셈블리 코드를 기계어로 번역하는 번역기
    인터프리터 : 한 단계씩 기계어로 해석하여 실행하는 언어처리 프로그램

C언어의 역사
데니스리치 1972년 개발

- UNIX 운영체제 구현에 사용할 목적으로 개발
컴퓨터 기종간 호환성을 가진 고급이면서 하드웨어를 제어할 수 있는
새로운 언어가 필요한 배경에서 개발된 언어가 C언어
- 어셈블리 언어로 된 유닉스 운영체제가 거의 C언어로 대체됨

C언어의 특징
-프로그램 이식성이 높다 (왠만한 프로그램들에 이식할 수 있어서)
-간단한 문법표현으로 함축적인 프로그램 작성이 용이하다.
-저급언어 특성을 가진 고급언어이다.
(컴퓨터가 쉽게 알아들을 수 있는 언어 : 저급언어 <-> 고급언어)

2) C 프로그램의 작성 및 준비

프로그램 개발 단계

프로그램 목적 정의 : 요구분석, 시스템 분석, 프로그램이 가져야 할 기능 정의

프로그램 설계

소스코드 작성

컴파일 / 링크

프로그램 실행

테스트와 디버깅

유지보수

C프로그램 개발을 위해서는

  1. 에디터와 컴파일러가 필요하다.
    에디터 : 소스코드 작성을 도와주는 도구
    컴파일러 : 기계어로 바꾸어 주는 번역기, C컴파일러, Dev-C++, Visual C++, GCC, ...

C프로그램의 완성 과정

  1. 코딩
    주어진 문제에 대한 설계를 바탕으로 소스코드를 작성하여 소스파일을 생성하는 과정
    소스파일 생성시 .c라는 확장자로 저장

  2. 컴파일 단계
    소스파일이 목적파일(.obj)로 변환되는 과정
    소스코드(source code) : 프로그램 안에 있는 명령어

  3. 링킹 단계 (실행파일의 생성)
    실행파일이 만들어지는 단계, 목적파일을 실행파일(execution file)로 변환하는 과정
    다른 목적파일/라이브러리 파일이 연결되어야지만 실행파일이 만들어진다.
    링커가 연결해준다.
    목적 파일(object file) : .obj의 확장자를 갖는 파일로 기계어들의 집합으로 이루어진 파일
    링커(linker) : 여러 목적파일과 라이브러리 파일을 연결해주는 도구

C프로그램의 작성과 실행 예
visual studio 컴파일러(솔루션 빌드)
단위 프로젝트들이 여러개 모여있는것이 하나의 솔루션

3) C 프로그램의 구성

C프로그램의 구조, 틀

하나 이상의 함수를 포함해야한다, 그 함수는 main()함수여야 한다.
선행처리기(preprocessor)를 제외하고 문장의 끝에는 세미콜론을 붙인다.

**도입부 : 프로그램 전체에 적용되는 사항을 기술**
#include<stdio>
int add(int x, int y)


/*
**main()함수는 가장먼저 호출되는 함수로서 모든 프로그램에 반드시 존재
선언문, 치환문, 제어문, 함수호출, ....**
*/

void main() 
{
	int i, j, sum;
    printf("함수의 호출\n");
    i = 10, j= 20;
    sum = add(i,j);
    printf("%d + %d = %d",i , j, sum)
}


/* 
**호출된 함수() main()함수에서 호출되는 함수에 대한 정의
사용자 정의 함수 부분, 이 부분은 도입부와 메인함수 사이로 들어갈 수 있다. (5강)**
*/
int add(int x, int y) 
{

	int tot;
    tot= x+y;
    return tot;

}


C프로그램의 구성요소

  • 예약여
    reserved word
    자료형, 기억, 제어, 기타 예약어가 사용이 됩니다.
  • 명칭(identifier)
    명칭의 첫 문자는 영문자나 밑줄(_)이여야 한다.
    숫자로 시작 불가, 특수문자 사용 불가, 예약어 사용 불가, 문자사이 공백 사용 불가
    영문자 대문자 소문자는 서로 구별하여 사용
    명칭의 길이는 컴파일러에 따라 차이가 있다. 32자까지 인식가능 일반적으로
  • 상수(constant)
    수치상수, 문자상수, 문자열상수
  • 연산자(operator)
  • 설명문(주석문

4. 에러와 경고

  • error
    C언어의 문법상 잘못된 경우 에러 메세지 출력
  • Warning
    경미할 실수 했을 때 발생
    프로그램 실행 자체에는 문제는 없지만 경고를 줌
    타당한 지적이면 수정하고, 아니면 그대로 넘어가도 된다.
    변수를 선언해놓고 프로그램내에서 사용되지 않은 경우 경고 발생,
profile
Hello, World!

0개의 댓글