공부를 할때도 그 공부에 대한 배경지식을 쌓듯이 C언어도 기본 개념과 기본지식이 필요하다고 느껴서 포스팅하게됩니다. C언어를 공부하기전에 누가 이 언어를 개발했는지 모르고 쓰면 개발자가 서운해 하겠죠? 평소에 게임을 할때 적어도 어느회사 게임인지 알고하는것처럼 먼저 개발자가 누군지 살펴봅시다. **개발자** : 미국의 벨연구소 소속에 **리치**라는 분께서 만들었습니다. **그렇다면 C언어는 어느 분야에 사용될까요?** 바로 우리가 컴퓨터를 사용할때 없으면 안 될 존재인 **운영체제**에 사용됩니다. 운영체제 중에서도 컴퓨터에 관심이 있으신 분들이라면 한번쯤은 들어보셨을 **리누스 토발즈**가 개발한 운영체제 **리눅스**역시 C언어 기반 운영체제입니다. 추가로 제가 옛날에 리눅스 마스터2급 자격증을 딸까하면서 공부했을때 **리눅스**가 **유닉스**를 모티브로하여 무료로 만들었다고 합니다. P.s)리눅스가 유닉스는 가격이 비싸서 유닉스가 싫어서 리눅스를 만들었다는 말이 있습니다. 그러므로 역시 **유닉스**도 C언어 기반이라는 소리죠. 그리고 가상화폐 역시 C언어의 업그레이드 버전이라 볼수있는 C++,파이썬 등으로 만들어졌습니다. **그렇다면 왜 C언어를 가장 먼저 배울까요?** 1. 많은 다른언어들 중에 C언어로 만들어진 언어들이 있다. 2. 컴퓨터 **보안, 시스템 해킹**에 관심이 있으신 분들은 **리버싱**이라는 역공학기술을 아실것입니다. 일단 C언어는 **컴파일러**라는것을 통해 C언어의 소스를 **컴파일러**로 **컴파일**을 해서 컴퓨터가 알아들을 수 있는 **기계어(2진수의 숫자(0,1))** 로 변환해서 컴퓨터에 명령을 하는 것입니다. 언어에는 **저급언어**(기계어, 어셈블리어)와 **고급언어**(C언어 , 자바 , 파이썬 등등) **최고급언어**인 사람들의 언어 자연어가 있죠. 여기서 기계어를 공부해서 기계어로 프로그래밍 하는것은 불가능하다고 볼정도로 어려운일입니다. 만약 가능한 사람이 있다면 그 사람은 컴퓨터와 직접 대화가 가능하고, 모든 컴퓨터안의 프로그램을 해킹할수 있을것입니다. 또, **기계어**와 같이 **저급언어**인 *어셈블리어**는 **기계어**와 1:1로 대화가 가능하고 **어셈블러**라는 것을 이용해야 **기계어**로 변환이 됩니다. 그래서 **어셈블리어**를 아는것도 아주 강력한데요. 프로그램을 **디버거**라는 툴을 통해 프로그램을 디버깅하면 **어셈블리어**로 이루어진 텍스트(?)가 나오는데 이것으로 분석을하여 이 프로그램이 어떻게 코딩되어있는지 알 수있습니다. **하지만 이때 C언어를 모르면 어셈블리어를 C언어로 바꾸지 못하겠죠** 이건 추가인데 어셈블리어는 하드웨어에대한 구조를 잘 알아야 하지만 C언어는 잘 몰라도 됩니다. 왜냐하면 어셈블리어는 모든것이 컴퓨터에 적합한 진수와 메모리로 이루어져 있기 때문 입니다. **긴 글 읽어주셔서 감사합니다. 이건 그냥 저의 지식이기 때문에 상세히는 다루지 못하였지만 그래도 조금이라도 도움이 되셨으면 하는 마음으로C언어 공부에 대한 첫 포스팅을 마치겠습니다.** **혹시 제가 잘못알고있거나 추가로 알고계신 내용있다면 댓글로 지식을 공유합시다 ^^** 좋은 하루 보네세요~~
author | kimdy |
---|---|
permlink | 1-c |
category | kr |
json_metadata | {"tags":["kr","programming","kr-newbie","kr-dev","steemit"],"app":"steemit/0.1","format":"markdown"} |
created | 2017-06-28 10:45:36 |
last_update | 2017-06-28 10:57:42 |
depth | 0 |
children | 9 |
last_payout | 2017-07-05 10:45:36 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 8.828 HBD |
curator_payout_value | 2.797 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 1,588 |
author_reputation | 162,559,595,502 |
root_title | "1. C언어 기본 지식" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 6,460,871 |
net_rshares | 1,339,430,823,209 |
author_curate_reward | "" |
voter | weight | wgt% | rshares | pct | time |
---|---|---|---|---|---|
kdj | 0 | 435,774,369,423 | 50% | ||
agile | 0 | 3,246,572,362 | 100% | ||
coinkorea | 0 | 894,149,677,991 | 8% | ||
lab106 | 0 | 1,138,497,562 | 100% | ||
dobro88888888 | 0 | 159,654,668 | 100% | ||
deathnote9 | 0 | 1,027,217,095 | 100% | ||
minniemouse | 0 | 1,143,285,214 | 100% | ||
geunwoong0624 | 0 | 1,143,364,702 | 100% | ||
murapj71 | 0 | 580,346,731 | 100% | ||
kimdy | 0 | 1,067,837,461 | 100% |
ㅎㅎ 좋은정보 감사드려요~
author | deathnote9 |
---|---|
permlink | re-kimdy-1-c-20170629t002945353z |
category | kr |
json_metadata | {"tags":["kr"],"app":"steemit/0.1"} |
created | 2017-06-29 00:29:45 |
last_update | 2017-06-29 00:29:45 |
depth | 1 |
children | 1 |
last_payout | 2017-07-06 00:29:45 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 14 |
author_reputation | 94,070,047,675 |
root_title | "1. C언어 기본 지식" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 6,552,574 |
net_rshares | 0 |
조금이나마 도움이 되서 기쁘네요 긴 글읽으시느라 수고하셨습니다 : )
author | kimdy |
---|---|
permlink | re-deathnote9-re-kimdy-1-c-20170629t071437727z |
category | kr |
json_metadata | {"tags":["kr"],"app":"steemit/0.1"} |
created | 2017-06-29 07:15:15 |
last_update | 2017-06-29 07:15:15 |
depth | 2 |
children | 0 |
last_payout | 2017-07-06 07:15:15 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 38 |
author_reputation | 162,559,595,502 |
root_title | "1. C언어 기본 지식" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 6,588,000 |
net_rshares | 0 |
C언어를 배우고 다른언어들을 배우면서 느끼는 점인데 C라고 하는 언어는 파고들수록 그 진가와 그매력이 확 와닫게 느껴지는거 같네요ㅎ 좋은정보감사합니다! 보팅과 팔로우 하고 가겠습니다ㅎ 앞으로도 좋은 정보들 올려주시면 감사하겠습니다ㅎ
author | geunwoong0624 |
---|---|
permlink | re-kimdy-1-c-20170629t121817720z |
category | kr |
json_metadata | {"tags":["kr"],"app":"steemit/0.1"} |
created | 2017-06-29 12:18:18 |
last_update | 2017-06-29 12:18:18 |
depth | 1 |
children | 1 |
last_payout | 2017-07-06 12:18:18 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 130 |
author_reputation | 203,516,395,886 |
root_title | "1. C언어 기본 지식" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 6,615,172 |
net_rshares | 0 |
그러게요 c를 더 팔려고 win32 api라는것을 알게되고 soeb이라는 사이트에서 공부를 해보려하는데 c언어는 정말 끝이 없는것같아요 저도 geunwoong0624님 포스팅에서 유용한글 기대합니다^^
author | kimdy |
---|---|
permlink | re-geunwoong0624-re-kimdy-1-c-20170629t125723406z |
category | kr |
json_metadata | {"tags":["kr"],"app":"steemit/0.1"} |
created | 2017-06-29 12:58:00 |
last_update | 2017-06-29 12:58:00 |
depth | 2 |
children | 0 |
last_payout | 2017-07-06 12:58:00 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 112 |
author_reputation | 162,559,595,502 |
root_title | "1. C언어 기본 지식" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 6,619,490 |
net_rshares | 0 |
Dennis Ritchie 는 UNIX 를 위해서 C 언어를 만들었고, The C Programming Language 라는 C 의 고전을 저술하였습니다. (Brian Kernighan 공저) 이 책은 얇은 듯 해서 쉽게 접근할 수 있을 것 같지만, 고급 수준의 프로그래밍과 UNIX 에 대한 이해가 필요합니다. 대개 책장 전시용으로 하나씩 소장되고 있습니다. 이 때 C를 K&R C 라고 하며, 이 후 ANSI C 로 표준,통합 작업이 진행되었습니다. 모든 언어는 Language Specification 이 있는데, C 의 경우는 표준화된 연도에 따라서 C89, C90, C95, C99, C11(2011) 의 순으로 스펙이 발전해 가고 있습니다. 가장 대표적인 C 컴파일러는 GCC (GNU C Compiler) 가 있으며, MS C 컴파일러도 사용됩니다. 운영체제에 따라서 소스코드를 변경해야 하는 불편함이 존재합니다. C 언어로 배포된 소스를 컴파일 하기란 쉬운일이 아닙니다. Make, ar 등의 도구에 대해서 잘 이해하고 있어야 하며, 라이브러리의 관계에 대해서도 알아야 하므로 꽤나 어려운 언어라 할 수 있습니다. Dannis Ritchie 는 안타깝게도 2011년에 작고하였습니다.
author | kdj |
---|---|
permlink | re-kimdy-1-c-20170628t163416698z |
category | kr |
json_metadata | {"tags":["kr"],"app":"steemit/0.1"} |
created | 2017-06-28 16:34:18 |
last_update | 2017-06-28 16:34:18 |
depth | 1 |
children | 1 |
last_payout | 2017-07-05 16:34:18 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 618 |
author_reputation | 4,188,781,313,300 |
root_title | "1. C언어 기본 지식" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 6,499,443 |
net_rshares | 0 |
kdj님 댓글과 블로그를 보니까 정말 깊이있게 공부하신 전문가 포스가 느껴지시네요. 덕분에 새로운 지식을얻어갑니다. 좋은하루되세요 :)
author | kimdy |
---|---|
permlink | re-kdj-re-kimdy-1-c-20170628t230801544z |
category | kr |
json_metadata | {"tags":["kr"],"app":"steemit/0.1"} |
created | 2017-06-28 23:08:39 |
last_update | 2017-06-28 23:08:39 |
depth | 2 |
children | 0 |
last_payout | 2017-07-05 23:08:39 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 75 |
author_reputation | 162,559,595,502 |
root_title | "1. C언어 기본 지식" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 6,545,118 |
net_rshares | 0 |
제가 하나 말씀드리지 못했는데 다른 포스팅하면서 중간중간 추가 지식을 포스팅 하겠습니다. 궁금하신것있으면 제가 아는선에서 설명해드리겠습니다. 댓글에 언제든지 물아보십시오 : )
author | kimdy |
---|---|
permlink | re-kimdy-1-c-20170628t105436771z |
category | kr |
json_metadata | {"tags":["kr"],"app":"steemit/0.1"} |
created | 2017-06-28 10:55:12 |
last_update | 2017-06-28 10:55:12 |
depth | 1 |
children | 0 |
last_payout | 2017-07-05 10:55:12 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 98 |
author_reputation | 162,559,595,502 |
root_title | "1. C언어 기본 지식" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 6,461,809 |
net_rshares | 0 |
친절한 설명에 관심없는 분들도 흥미를 가질것 같네요:)
author | lab106 | ||||||
---|---|---|---|---|---|---|---|
permlink | re-kimdy-2017628t221338829z | ||||||
category | kr | ||||||
json_metadata | {"tags":"kr","app":"esteem/1.4.5","format":"markdown+html","community":"esteem"} | ||||||
created | 2017-06-28 13:13:42 | ||||||
last_update | 2017-06-28 13:13:42 | ||||||
depth | 1 | ||||||
children | 1 | ||||||
last_payout | 2017-07-05 13:13:42 | ||||||
cashout_time | 1969-12-31 23:59:59 | ||||||
total_payout_value | 0.000 HBD | ||||||
curator_payout_value | 0.000 HBD | ||||||
pending_payout_value | 0.000 HBD | ||||||
promoted | 0.000 HBD | ||||||
body_length | 30 | ||||||
author_reputation | 417,482,198,443 | ||||||
root_title | "1. C언어 기본 지식" | ||||||
beneficiaries |
| ||||||
max_accepted_payout | 1,000,000.000 HBD | ||||||
percent_hbd | 10,000 | ||||||
post_id | 6,475,467 | ||||||
net_rshares | 0 |
ㅎㅎ 과찬이십니다~~
author | kimdy |
---|---|
permlink | re-lab106-re-kimdy-2017628t221338829z-20170628t131439655z |
category | kr |
json_metadata | {"tags":["kr"],"app":"steemit/0.1"} |
created | 2017-06-28 13:15:15 |
last_update | 2017-06-28 13:15:15 |
depth | 2 |
children | 0 |
last_payout | 2017-07-05 13:15:15 |
cashout_time | 1969-12-31 23:59:59 |
total_payout_value | 0.000 HBD |
curator_payout_value | 0.000 HBD |
pending_payout_value | 0.000 HBD |
promoted | 0.000 HBD |
body_length | 11 |
author_reputation | 162,559,595,502 |
root_title | "1. C언어 기본 지식" |
beneficiaries | [] |
max_accepted_payout | 1,000,000.000 HBD |
percent_hbd | 10,000 |
post_id | 6,475,662 |
net_rshares | 0 |