매우 쉬운 C언어 알아보기 : 준비물
게시글 주소: https://dev.orbi.kr/00036297606
오르비에 암호학 관련 게시글을 쓰려고 했는데 수식지원과 에디터가 개판인 바람에 쓰지를 못했습니다.
그 대신 누구나 쉽게 배울 수 있는 C언어에 대해서 알아보고자 합니다.
준비물
유닉스 계열의 운영체제(BSD,Linux,macOS 등..)
컴파일러 (gcc)
텍스트 에디터 (vim,emacs,nano,vscode 등..)
리눅스 설치하기
대부분은 윈도우 운영체제를 사용중일 것입니다. 윈도우 10은 WSL이라는 것을 사용이 가능합니다.
쉽게 말하자면, 윈도우에서 리눅스 커널을 실행할 수 있습니다.
훌륭한 가이드가 있습니다.
https://bebutae.tistory.com/127
위 블로그를 보고 따라서 윈도우에 설치해 주세요. 우분투 운영체제를 설치하십시오.
컴파일러 설치하기
컴파일러는 우리의 C언어를 기계가 이해할 수 있는 코드로 바꾸어 주는 프로그램입니다. 우리는 여기서 GCC라는 컴파일러를 사용할 것입니다.
리눅스(우분투)를 설치했다면, 명령 창(Shell)에 다음 명령어를 입력해 보세요.
sudo apt-get install gcc
설치가 완료될 것입니다.
텍스트 에디터 준비하기
텍스트 에디터는 우리가 코드를 수정할 수 있는 에디터입니다. 쉽게 말하자면 메모장에 여러 기능이 추가되었다고 생각하시면 됩니다. 텍스트 에디터로는 마이크로소프트에서 개발한 VScode를 사용할 것입니다.
인터넷에서 VScode를 검색하여 설치하여 주십시오.
https://evols-atirev.tistory.com/13
다음의 훌륭한 가이드가 있습니다. 따라해 주시면 됩니다.
C언어 개요
C언어는 1970년 UNIX라는 운영체제를 개발하기 위해 만들어진 언어입니다. 그 당시만 하더라도, 모든 운영체제는 CPU에 종속적인 어셈블리 언어로 개발되었기 때문에, 새로운 기계에 운영체제를 이식하기 위해서는, 코드를 모두 뒤엎어야 했습니다. 이러한 단점을 극복하기 위해, CPU에 독립적인 언어로 C언어가 탄생하였습니다.
사용되는 분야
운영체제
임베디드 시스템 개발
암호학 라이브러리
디바이스 드라이버
C언어는 컴퓨터의 매우 낮은 레벨까지 제어할 수 있습니다. 이러한 특성으로 인해 컴퓨터의 가장 낮은 부분에서 실행되는 코드나, 속도가 매우 중요한 프로그램 개발에 사용됩니다.
왜 배워야 하는가?
메모리에 직접 접근이 가능하다.
컴퓨터 구조에 대해 탐구할 수 있다.
우리의 첫번째 프로그램
위 가이드를 따라하시고, 우분투 운영체제를 윈도우에서 실행하시면, 홈 디렉토리에서 명령 창이 실행될 것입니다.
다음과 유사한 창이 보이면, 우리의 명령 창은 당신의 명령을 대기하고 있는 것입니다.
1 | root@computer: $ | cs |
VScode를 실행하여, hello_world.c라는 파일을 만들어 다음 코드를 입력해 봅시다.
1 2 3 4 5 6 | #include <stdio.h> int main(){ printf("Hello, World!"); return 0; } | cs |
그 다음, 명령 창에서 다음과 같은 명령을 실행시킵니다.
1 | gcc -o hello_world hello_world.c | cs |
이 명령은, 컴파일러에게 hello_world.c 라는 소스 파일을 hello_world라는 실행 파일로 컴파일 하라는 명령어 입니다.
컴파일이 지금 무슨 뜻인지는 몰라도 됩니다.
위 명령이 아무 문제없이 실행되었다면, 다음 명령어를 입력해 hello_world를 실행해 봅시다.
1 | ./hello_world | cs |
리눅스에서 실행 파일을 실행하려면, 실행 파일 앞에 ./를 붙이면 됩니다.
다음과 같은 텍스트가 명령 창에 보여질 것입니다.
1 | Hello, World! | cs |
축하합니다. 첫번째 C 프로그램을 작성한 것입니다. 이제 당신도 프로그램을 작성할 수 있는 겁니다.
0 XDK (+0)
유익한 글을 읽었다면 작성자에게 XDK를 선물하세요.
-
오르비문학 1화 0 0
오르비문학 1화
-
Test 0 0
Tetsteyey
-
수학 4등급만 받으면 2 0
쫀득하게 인서울 할 수 있는데
-
엘든링 왜 자꾸 멈추지 1 0
컴퓨터 좋은건데 씨발
-
목 졸라줘 5 1
켁켁켁 숨막혀 ㅜㅜ
-
시험지에 따라서 난이도가 가장 극단적으로 달라지는 번호같음....
-
개쉽게 풀리는데 이거 맞나
-
정시로 갑시다 8 0
내신반영을 노려서 내신 깡패 정시러
-
나왔어 12 0
다시감 근데 저게 왜 이륙햇냐
-
갑자기생각난썰 1 1
고1 2학기 학급회장선거때 후보가 2명이엇는데 그 친구들 둘이 합의하고 한명이...
-
그만하고 잘까 1 0
흐름이 끊겨버렷네
-
세기말 수능 1 1
2000학년도 대학수학능력시험
-
강은양t 0 0
현역 고3이고 작년까지 모고 3~4등급 나왔는데 지금부터 강은양t 들으려고 합니다....
-
2시열차 1 0
출발
-
지금 강민철 현강 다니고 있는데 저랑 너무 안맞는 느낌이 심하게 들어서...
-
뭘 해야하나요 0 0
이번에 고등학교 2학년 된 이공계 지망하는 지방 일반고학생입니다. 생기부를 제대로...
-
이게 오르비를 재밌게 오래하려면 10 4
수험생활을 지속해야 함
-
에ㅔㅔㅔㅔㅔㅔㄴ들리스레인ㄴㄴ 0 1
폴온마이헐트 코코로노 키즈니ㅣㅣㅣ
-
내 이상형 중단발에 속눈썹 1 0
-
우와 보추야동 많이떴다 2 2
보다자야지
-
심심한데 무물보 5 0
응애 나 아가학생
-
본인 물1 점수 꼬라지 0 1
3모 48점 (99) 5더프 47점인가였는데 시험이 어려웠어서 전국석차 30등쯤...
-
오후8시부터자다가깼더니 1 0
다시잠이안오네.. 비상..!!
-
생각나는구나
-
ㅇㄴ근데 0학점 패논패과목을 오ㅑㄹ케 빡세게시켜 0 0
그냥 좀 봐주면 안되나
-
시발점 한 다음 스블 0 0
고2이고대수 개념원리, 쎈, 고쟁이 했습니다개정 시발점 사놓은 게 있어서...
-
러셀 외부생 더프 성적표 0 0
문자로 발송되나요?? 아님 직접 찾으러 가야햐나요??
-
원래 사람은 별을 쫓아 달려갈 때 가장 빛나는 법이여설령 닿지 못할지라도적어도 내...
-
저걸 어케 함 진짜 와.. 원과목 중 생1만 수능공부로 안해봤는데 안하길잘한듯
-
시발 나 개폐급임 2 1
조별과제 하는족족 내것만 교수님 피드백 나오고 술처먹다 팀원들한테 자료 제출 개늦게하고 자퇴마렵다
-
딱 한 마디만 하고 자러감 9 3
미쿠 ㅈㄴ 예뻐어~~~~~~~~~~~~
-
중앙대 가기 59일차 3 1
안녕하세요 중앙대29학번 부산사나이 이동현입니다 음 오늘이 벌써 59일차군요...
-
이제 좀 자보실까 11 1
음음
-
리젠존나느리네 1 0
오르비망함?
-
너무멍청해짐 1 0
ㅜㅜㅜㅜㅜ
-
생윤 진짜 1도 모르는 쌩노베인데 누구 듣는 게 좋을가여
-
15살과 엄마 그 사이는 2 0
뭐라함 급함
-
대신 연세대 가겠다 선언
-
작년 10모 20번 0 0
이렇게 푸는거 맞나..?
-
위키하우 도움 ㅈㄴ 안되네 6 0
ㅗㅗㅗㅗㅗㅗ
-
새르비 할수록 4 0
헛소리가 늘어가는듯
-
아니 난 신라면 쳐돌이라 5 0
신라면만 먹는데….
-
내가사실은생명과학을좋아함 1 0
수능말고 그냥생명과학
-
. 11 1
-
님들 최애 과목 말해보셈 7 0
난 국어
-
님들 최애 라면 말해보셈 10 0
난 신라면
-
라면이랑 과자 안먹은지 6일차 2 0
후후
이...이게 뭐노
선생님 파이썬만 하다오니 너무 어렵읍니다