씹병신같은 윈도우가 업데이트하라고 재부팅해줬더니 업데이트 안하고 걍 재부팅됬네여.
걍 이번 (1)까진 그냥 올려야겠어여.
저번 시간에는 프로그래밍 언어를 컴파일하여 기계어로 번역해주는 역활을 하는 컴파일러중 하나인 Visual Studio를 다운했었지여?
이번 시간에는 VS을 이용하여 C언어로 '경찰견님의 변기라서 행복해요 하악하악' 이라는 문구를 출력해 볼 거에여.
자. 저번 글처럼 방법을 따라하시고 님들 뇌마냥 하아얀 백지를 만드는데 성공하셨다면,
맨 위에 #include라고 작성해 주세여.
창작판 게이중에서도 알 사람이 있을 것 같은데, include라는 단어는 실제 '포함하다' 라는 뜻을 가진 영어단어에여.
그리고 뒤에 한 칸 띄우고 <stdio.h>라고 작성해주세여.
'포함하다' 라는 뜻을 가진 인크루드 뒤에 <stdio.h>를 적는데 성공하셨나여?
와! 축하해여! 적어도 손꾸락븅신은 아니시네여!!
님들 여기서 뭔가 감이 오지 않아여??
왜 하필 앞에서 include를 사용했을까여????
네. 프로그래밍을 위해 사용하는 여러가지 함수들이 있는데요, 이 함수들을 담고 있는것이 바로 헤더파일이라는 새기들이에여.
(여기서 씨,씨쁠,자바 등 기본은 다 뗐다고 존나 나대고 싶은 씹새끼들이 있을텐데여, 어차피 니들도 알다시피 지금 막 C언어 배우는 초짜에게 다 설명하기에는
존나 머리아프고 배우기도 개같아서 걍 간단하게 설명만 대충 해주고 넘어갈거에여.)
얘들이 있어야 비로소 프로그래밍을 위해 여러가지 역활을 하는 함수를 사용할 수 있다는 거에여.
고로 우리의 목표인 문구 출력을 위해서 그에 해당하는 역활을 수행하는 헤더파일을 포함하여야 만 된다는 거에여!
그렇기에 앞에서 include를 사용하여 stdio 라는 헤더파일을 포함하겠다고 선언하는거죠.
여기까지 적는데 성공하셨다면, 한 줄 띄우고 int main()라고 적어주세여.
그 다음{(중괄호:{)를 열어주세여.
대괄호가 왜 필요하냐면, 여기서부터 내가 어떤 역활을 하는 범위를 지정하겠다! 라고 선언하는거에여.
물론, 나중에는 범위의 끝을 지정해주기 위해 닫는 대괄호 } 또한 사용해야 겠지여?
대괄호를 여셨다면, 다시 한 줄 띄우고 printf 라고 적어주세여.
이놈이 바로 위에서 말한 '함수'에여.
오늘의 목표는 뭐였죠?
'어떠한 말을 출력하는 것' 이었지여?
저놈이 바로 '출력'의 역활을 하는 '출력함수'에여!
여러분들에게 어떠한 값을 받아 그것을 모니터 상으로 출력해주는 역활을 하지여!!
적으셨다면 뒤에 (와 "를 넣어 printf("") 꼴로 만들어주세여!
만들어 주셨으면, 큰따옴표 사이에 경찰견님의 변기라서 행복해요 하악하악 이라고 적어주세여.
꼭 해야하냐구여? 네! 노예새끼야
문장을 모두 적으신 다음, 끝에 ") 뒤에 ;을 붙여주세여.
뒤에 ;를 붙인 이유는, 저것을 세미콜론이라고 하는데 이것은 간단하게 하나의 지시가 모두 끝났다고 알리는 것이라고 생각하시면 대염.
여기까지 모두 마친다면, 이런 꼴이 되겠지영??
#include <stdio.h>
int main()
{
printf("경찰견님의 변기라서 행복해요 하악하악");
}
자, 만약 이렇게 끝내셨다면 위쪽을 살펴봐주세영.
도구 밑에 플레이 모양이 있을거에여. 이걸 클릭해주세여.
클릭하셨다면, 이것을 빌드하시겠습니까? 라고 뜨실거에여.
여기서 빌드란, C언어 소스를 실제 사용 가능한 응용프로그램으로 만들어지기까지의 과정이라고 생각하시면 되염.
'예'를 누르시면, 무언가 촥 떴다 사라지실거에여.
이는 컴퓨터씹새끼가 명령을 내린 모든 역활을 수행하게 되면 자동으로 종료되는 아주 츤츤한 새끼기 때문이지여.
이를 방지하기 위해 여러분들은 앞으로 getchar(); 을 붙여 사용하게 될 거에여.
자. 다시 getchar();를 넣어 만든다면
#include <stdio.h>
int main()
{
printf("경찰견님의 변기라서 행복해요 하악하악");
getchar();
}
꼴이 되겠지영?
저렇게 넣어주면, 문장을 출력하더라도 getchar();의 역활까지 수행해야 하기 때문에 종료되지 않는거에여.
종료를 하고 싶으시면 엔터를 치셔도 되고, 엑스를 눌러 나가셔도 되여.
자. 이번 편에서는 원하는 문장을 출력하는 방법에 대해서 배워봤어여.
여기서 눈치 빠른 분들은 어느정도 알아채셨을거에여.
printf("a");
이렇게 원하는 문장이나 단어를 (" ") 사이에 넣어주기만 하면,그대로 출력된다는 사실을여.
여기서 한가지, 퀴즈에여!!
printf("a");
printf("b");
printf("c");
이렇게 만들어 출력을 하면 '한 줄'로 출력될까요 '세 줄'로 출력될까여?
정답은 '한 줄'로 출력이 되여. ex/ (abc)
만약 줄을 넘기고 싶으시면 (" ") 사이에 \n을 넣어주시면 해결된답니다!
즉,
printf("a\n");
printf("b");
printf("c");
은 두줄
ex / a
bc
printf("a\n");
printf("b\n");
printf("c");
은 세줄,
ex / a
b
c
뇌가 있으시다면 이해하셨지여?
이것으로 이번 편의 목표인 '원하는 문장을 출력하는 방법'은 모두 끝이 났어여!
이제 여러분이 하셔야 할 건 다음 편까지 기다리는 것이 아니라,
저것을 몇번 응용해 사용해보시는거에여.
물론 니들은 자율적으로 하라면 조또 안할테니까 숙제를 드릴게여.
1. 원하는 문장을 출력해 보아라.
2. 원하는 문장을 두줄로 출력해 보아라.
3. 원하는 문장을 세줄로 출력해 보아라.
네. 열심히만 보셨다면 개나소나 다 할 수 있는 숙제니까 열심히 하도록 하세여!!
그럼 다음시간에 뵈여!!!
추가 : 한두번 씩 실행이 안된다고 하는 닝겐들이 있을거에여.
그것은 빌드를 하면서 진행되는 과정인 '디버깅'때문이에여.
디버깅이란, 님들이 프로그래밍 소스를 만들면서 발생한 논리적 오류를 찾아내는 역활을 해여.
만약 여기서 오류가 발생한다면, 다시 한번 잘 살펴보도록 하세여.
많은 분들이 틀리는것중 하나가 세미콜론이니까 세미콜론이 들어갔는지도 꼭 확인하시구여.
한성대공돌이
PIC Micom 이나 알려줘
18f452쪽으로
한성대공돌이
PIC Micom 이나 알려줘
18f452쪽으로
닉네임은2~12자이내
잠이옵니다
닉네임은2~12자이내
뜨고 난 다음에 크리티컬에러 뜨면서
System.MissingMethodException
메서드를 찾을 수 없습니다. 'Void Microsoft.Data.Tools.Schema.Sql.Build.SqlTaskHost.GetWorkload(Int32 ByRef, Int32 ByRef, System.String ByRef)'
위치: Microsoft.VisualStudio.Data.Tools.Package.StatusBarService.TotalWorkload(String& description)
위치: Microsoft.VisualStudio.Data.Tools.Package.StatusBarService.UpdateStatusBar()
위치: Microsoft.VisualStudio.Data.Tools.Package.StatusBarService.OnIdle()
위치: Microsoft.VisualStudio.Data.Tools.Package.UI.DataPackage.OnIdle()
위치: Microsoft.VisualStudio.Data.Tools.Package.Project.VsPkgIdleProcessingComponent.FDoIdle(UInt32 grfidlef)
잠이옵니다
닉네임은2~12자이내
daughtry
푸른달의타쿠
그런데 잘 모르는거 질문좀 할게
main()앞에 int나 void적잖아 그런데 void가 많이 쓰이던데 void가 뭐잉?
잉텔
포인터를 받을때 void *로 받는데
어떠한 형의 포인터를 받을수가 있음
대신 바로는 못씀
쿵쾅이
경찰견
1122334455
함수 구조를 약간 설명하자면
int main (void)
라면 입력으로 void 즉 아무것도 받지 않고 int 형 값을 리턴한다는 이야기임
따라서 return 0;이 필요하지
void main (void)
라면 리턴할 값이 없어도 되므로
return 0;이 필요하지 않음
float foo (char bar) 등등 마늠
고게이
void main(){
}
이건 컴파일러가
int main(void){
return 0;
}
로 바꿔줌 프로그래머마다 취향차이가 있긴 한데
맥에서 xcode 구버전 같은 경우 이런 경우 error처리함
쇼온
약간거슬린다ㅋㅋ
처음보는사람들은 헷갈릴수도있다고
경찰견
쇼온
다음편도 기대할께!
긴하품
이게 뭐하는거야
이걸 하게되면
뭐가 완성되는거야?
경찰견
라고 쓰면 모니터에 가나다 라고 출력됨.
printf("가나다\n라마")
라고 쓰면 모니터에
가나다
라마
라고 출력됨.
즉, printf 라는건 (" ") 안에 있는 말을 모니터상에 표시하라. 라는 약속임
숙명의 ㅇㅇㅇ
#include<studio.h>
int main()
{
printf("경찰견님 사랑해요 뿌잉 뿌잉");
gatchar();
}
이렇게 만들었는데 <studio.h> 소스파일을 열수없다고 #include 에서 에러가 나 도와줘 형 ㅠㅠ
잉텔
stdio.h
standard I/O
닝겐
잉텔
안쓰는게 좋다... 표준이 아님... (gcc에서 오류남)
int main써라 두번써라
더깊게 들어가면 _tmain WinMain main셋 모두 같은 함수로 오버로딩 되있음