1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 | #include "pch.h" #include <iostream> #include <time.h> //func01이 함수 이름이다. //함수이름은 중복될 수 없다. //void는 '없다'라는 의미를 가진다. //함수는 이름을 불러야(call) 실행이 된다. //func01함수를 call 한다. //뒤에있는 void는 생략할 수 있다. //함수를 call할때는 반드시 함수명뒤에 ()가 있어야된다. //함수는 구태여 주석을 잡을 필요가 없다. - 안 부르면 콜안됨. //func01(); - call한다는 얘기는 그 함수로 jump해서 실행후 다시 돌아오는 것. void func01() { printf("함수 1번콜\n"); printf("호 랑 이 \n"); } //func02(); - 함수가 콜이되면 함수내용이 실행된다. //함수는 한번이상 몇번이고 콜할수있다. void func02() { printf("함수 2번콜\n"); printf("라면먹고\n"); printf("밥먹고\n"); } void func03() { printf("함수 3번콜\n"); for (int i = 0; i < 10; i++) printf("5*%d=%d\n", i, 5 * i); } void func04() { int s = 0; for (int i = 0; i <= 10; i++) s+=i; printf("%d\n", s); } //내가 만든 구조체의 크기를 알고싶을때 sizeof()를 쓸 수 있다. void func05() { char a=10;//1byte 8bit short b=20;//2byte long c=30;//4byte - 반드시 4byte int d=40;//4byte - 사용하고있는 컴퓨터의 비트수에 따라 다름. 64비트 컴퓨터에서는 8byte,32비트는 4byte, default = 4byte, float e= 3.14f;//4byte - 실수, 끝에 f붙여줘야된다. 오류날수있다. double f = 3.14;//8byte - 실수, float보단 정밀하다. bool g = true;//1byte - T or F , 0,1도가능 printf("%d \n", sizeof(char)); printf("%d \n", sizeof(short)); printf("%d \n", sizeof(long)); printf("%d \n", sizeof(int)); printf("%d \n", sizeof(float)); printf("%d \n", sizeof(double)); printf("%d \n", sizeof(bool)); } void func06() { int a = 10; int b = -10; signed int c = -20;//signed을 적으나 안적으나, 안적어도 default로 들어가있다(굳이 안적어도된다.) - 양수,음수 다 사용할 수 있다. unsigned int d = 30;//원래 int가 20억까지 쓸수있다면, unsigned 붙이면 40억까지 가능 but 음수안됨. //unsigned e = -30; 양수만 사용가능 signed char e = 150; unsigned char f = 150;//max = 255 8bit는 2의8승 = 256, 0부터 255까지 printf("%d %d\n", e, f);//e는 비정상적으로 출력됨 //unsigned = 나이,볼륨의 감도,색상값 //java에서는 안쓴다. } void func07() { int a = 123, b = 0x123, c = 0xab7;// d = ab7; 0x안붙이면 안됨 - 앞에 0x를 붙이면 16진수가되고, 출력은 10진수로된다. 0만붙이면 8진수 0,0x 8,16 //int e = 0386; 8진수가 넘어가므로 오류가뜬다. int f = 0376;//8진수 376을 10진수로 printf("%d %d %d %d \n", a, b,c,f);//2진법을 표현하는 문법은 없다. } //변수와 상수개념 //변수를 상수화시킬때 const(상수변수)를 붙인다. void func08() { //int는 type, a = 변수,'='은 대입, 대입되는값을 literal이라고함. int a = 10,b=20; a = 100;//a가 값을 대입받을 수 있다면 a는 변수 이다. b = 200;//b가 값을 대입받을 수 없다면 b는 상수이다. const int c = 30;//얘는 이 이후부터 상수가된다 - 대입을 받을 수 없다. //c = 300; const해서 대입 못받음. //const int d; - const변수는 무조건 초기값을 받아야된다, 이제 대입을 받을 수 없기 때문에. const int RainbowColorNumber = 7;//다른수로 안바뀌도록 고정하려고 씀 ,ex)1분 =60초 등 const float pi = 3.14f;//고정값 //20 = 30; 상수이기 때문에 대입받을 수없다.. } //shift + tab void func09() { /* printf("함수9번콜\n"); //10 16 2 진수 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110 7 7 0111 8 8 1000 9 9 1001 10 A 1010 11 B 1011 12 C 1100 13 D 1101 14 E 1110 15 F 1111 */ } void func10() { } int main() { printf("1\n"); func02(); printf("2\n"); func02(); func03(); func04(); func05(); func06(); func07(); } | cs |
728x90
'비트 단기 > c' 카테고리의 다른 글
함수이어서 3~ (0) | 2018.11.09 |
---|---|
함수 이어서~2 (0) | 2018.11.08 |
구조체 복습 11/06 (0) | 2018.11.07 |
복습 (0) | 2018.11.06 |
11/5 포인터 구조체 (0) | 2018.11.05 |
댓글