Computer Science/C언어

[C언어] #1 C 프로그래밍 소개

꿈꾸는어린이 2018. 2. 3. 16:17

//

일시 : 2018.02.03

장소 : 답십리 도서관 15 : 30 ~ 16 : 00

내용 : C언어 콘서트 chap 1

//

C Programming

  • 컴퓨터 시스템

    • 하드웨어 : 컴퓨터에 설치되어 있는 모든 물리적인 장치

    • 소프트웨어 : 컴퓨터를 동작시키는 데 사용되는 다양한 종류의 프로그램

  • 최초의 컴퓨터 에니악(ENIAC)은 HW와 SW가 분리되지 않아 프로그램을 변경하기 위해서는 모든 전선의 연결을 바꾸어야 했음.

  • 이 후 폰노이만의 방식을 따라 HW와 SW를 분리하여 범용적인 기계로 만들어 동일한 HW상에서 SW를 다양하게 바꾸어가며 작업할 수 있게 됨.

  • 프로그램(Program) : 컴퓨터에게 무엇을 시킬지 명령어들을 기록해놓은 문서

  • flow chart(설계) -> coding -> compile (debug) & linking -> test

  • 인간 언어(자연어) -> 프로그래밍 언어 -> (컴파일러) -> 기계어(이진수)

  • 컴퓨터는 이진수 형태로 표현하여 처리한다.

    0은 스위치가 열린 상태(off)

    1은 스위치가 닫힌 상태(on)



C언어

  • UNIX OS을 위해 사용됨. 간결, 효율적(프로그램 크기가 작고 실행 속도가 빠름)

  • OS를 만들었던 언어, 어셈블리 언어이기 때문에 구체적인 HW 제어가 가능

    -> 임베디드 프로그램은 대부분 C언어로 개발. 이식성↑

    어셈블리어 : 기계어를 사람이 이해하기 쉬운 기호와 1:1대응시켜 기호화한 언어

    어셈블리어를 작성된 프로그램은 어셈브러에 의해 기계어르 번역되어 실행 가능.

  • 알고리즘(algorithm) : 문제를 해결하는 절차/방법

  • 소스파일.c -> 컴파일 -> 오브젝트파일.obj -> 링크 -> 실행파일.exe

    • 컴파일러(compile) : 소스 코드를 기계어로 변환(문법 체크)

    • 오브젝트 파일 : 기계어로 되어 있는 파일

    • 링크(link) : 오브젝트 파일들을 라이브러리 파일들과 연결하여 하나의 실행 파일로 만듦

  • [솔루션 빌드] : 컴파일 + 링크하여 실행 파일 생성



★visual studio 2016 scanf error solution

  1. #define _CRT_SECURE_NO_WARNINGS 추가

  2. [프로젝트 속성]-[전처리기]에 _CRT_SECURE_NO_WARNINGS 적용


'Computer Science > C언어' 카테고리의 다른 글

[C언어] #3 변수와 자료형  (0) 2018.02.04
[C언어] #2 C언어 기초사항  (0) 2018.02.03