2016. 3. 28. 16:58ㆍ네트워크 보안 수업/C언어
언어?
- 컴퓨터에게 명령을 전달하기 위해 사용
컴파일 (compile)
- GCC (GNU C Compiler)
#> gcc <C Source file path>
#> touch source.c
#> gcc source.c
...
undefined reference to `main'
기본 함수 : main() 함수
- c소스파일은 반드시 main 함수를 포함하고 있어야 한다.
* main()함수의 원형
#include <stdio.h>
int main(int argc, char *argv[]) )
{ )
) 기본이므로 외워둘것
return 0; )
} )
컴파일(에러 수정)
- 기본 함수를 추가해준 뒤 다시 컴파일
#> gcc source.c
#> ls
a.out source.c
#> file source.c
source.c: C source, ASCII text
#> file a.out
a.out: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=d5053adc0abeecdf159e8627bc8f4dadff445a73, not stripped
* 실행가능한 파일은 a.out 파일이다.
[실습]: sample01
#include <stdio.h>
int main(int argc, char *argv[])
{
return 0;
}
c컴파일러는 확장자에 .c 가 붙어야 컴파일 할 수 있다.
[실습]: sample02.c
#include <stdio.h>
int Main(int argc, char *argv[])
{
return 0;
}
c컴파일러는 대소문자를 엄격하게 관리함
[실습]: sample03.c
#include <stdio.h>
int main(int argc, char *argv[])
{
return 0;
}
sample03.c: In function ‘main’:
sample03.c:6:1: error: expected ‘;’ before ‘}’ token
}
^
sample03.c: In function ‘main’:
----------- ---------------------
1 2
1: 에러가 발생한 소스파일
2: 에러가 발생한 함수
sample03.c:6:1: error: expected ‘;’ before ‘}’ token }
---------- - - ----- -----------------------------------
1 2 3 4 5
1: 에러가 발생한 소스파일
2: 에러가 발생한 라인넘버
3: 에러가 발생한 글자위치
4: 에러타입 : error, warning
5: 에러 메세지
[실습]: sample04.c
#include <stdio.h>
int main(int argc, char *argv[])
{
return 0;
}
int main(int argc, char *argv[])
{
return 0;
}
[실습]: sample05.c
#include <stdio.h>
int main(int argc, char *argv[])
{
}
#> gcc sample05.c -Wall
* main 함수의 마지막은 항상 "return 0"로 끝나야 한다.
[실습]: sample06.c
#include <stdio.h>
int main(int argc, char *argv[])
{
}
return 0;
* 함수 바깥에는 실행 코드를 작성할 수 없다.
* 변수의 선언은 함수의 바깥에서도 가능하다.
[실습]: sample07-1.c
#include <stdio.h>
int main(int argc, char *argv[])
return 0;
}
[실습]: sample07-2.c
#include <stdio.h>
int main(int argc, char *argv[])
{
return 0;
* 함수의 시작과 끝은 항상 정의 해주어야 한다.
[실습]: sample08.c
#include <stdio.h> int main(int argc, char *argv[]) {return 0;}
[실습]: sample09.c
#include <stdio.h>
int
main
(
int
argc,
char
*argv[]
)
{
return
0;
}
* c기초 수업의 목표는 수업 시간에 작성했던 내용을 보지 않고 작성할 수 있다면 완성!
'네트워크 보안 수업 > C언어' 카테고리의 다른 글
네트워크 보안 수업 6일차 - 코리아 정보보안 IT학원 (0) | 2016.04.04 |
---|---|
네트워크 보안 수업 5일차 - 코리아 정보보안 IT학원 (0) | 2016.04.01 |
네트워크 보안 수업 4일차 - 코리아 정보보안 IT학원 (0) | 2016.03.31 |
네트워크 보안 수업 3일차 - 코리아 정보보안 IT학원 (0) | 2016.03.30 |
네트워크 보안 수업 2일차 - 코리아 정보보안 IT학원 (0) | 2016.03.29 |