본문 바로가기

Coding&Script/C, C++,C#11

전역변수/지역변수/정적변수/레지스터변수 전역변수(Global Variable) -프로그램 어디서든 접근 가능한 변수를 말한다.-main함수가 실행되기전에 프로그램의 시작과 동시에 메모리에 할당된다.-프로그램의 크키가 커질수록 전역변수로 인해 프로그램이 더 복잡해질 수 있다.-메모리에서 데이터(Data)영역이 적재된다.-예제 #include int a = 5; void changeValue() { a = 10; } int main(void) { printf("%d\n", a); changeValue(); printf("%d\n", a); system("pause"); return 0; } int a=5라고 메인 함수 호출 이전에 선언한다. 메인함수에서 선언하지 않아도 메인함수 실행전에 선언되어있기때문에, 프로그램이 시작과 동시에 메모리에 적재가.. 2019. 3. 20.
문자/문자열[char형/%c/getchar(),gets(),gets_s(),strlen(),strcmp(),strcpy(),strcat(),strstr()] C언어 문자 C언어의 문자는 ASCII코드를 따른다. 아스키코드는 0~127중 1byte로 구성되며, 주요문자를 출력하도록 해준다.*아스키코드로 표현하는 문자 0 1 2 3 4 5 6 7 8 9 48 49 50 51 52 53 54 55 56 57 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 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 a b c d e f g h i j k l m n o p q r s t u v w x y z 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 .. 2019. 3. 20.
포인터 55포인터변수포인터 변수는 지금까지의 자신의 자료형에 맞는 값을 저장받는 변수와 달리, 메모리 주소를 저장하는 변수이다.즉, 특정한 변수 자체가 존재하는 메모리주소의 값을 가지게 된다.포인터를 정의할때에는 변수명 앞에 *을 붙여서 선언하게 된다.int a = 5; int *b = &a; 또한 변수를 선언할떄에 *을 붙힌 이후에 변수를 *을 붙혀서 호출하게 되면 선언된 포인터변수가 가르키는 변수를 구하게 된다.포인터 변수를 선언할때 뒤의 값에 &를 붙이는 이유는 변수의 메모리시작주소값을 구한다는 의미이다.#include int main(void) { int a = 5; int *b = &a; printf("%d\n", b); printf("%d\n", *b); system("pause"); } 위의 예제에.. 2019. 3. 19.
배열 배열의 필요성동일한 자료형을 여러개 담는 기술이 필요하게 되었으며, 그로인해 배열을 사용하게 된다. 배열이 생기며, 변수의 지정의 양이 획기적으로 줄어들수있다.배열의 선언방식 :자료형 배열명[배열의 크기]={초기화값}; //초기화값은 없을 수도 있다. int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0}; 배열로 선언된 자료는 배열명[인덱스]로 찾을 수있다. 여기서 주의할 점은, 인덱스0 1 2 3 4 5 6 7 8 9 초기화값 1 2 3 4 5 6 7 8 9 0 이런식으로 저장이 된다. 즉, 값 1을 보고 싶다면, 호출은 a[1]이 아닌 a[0]을 호출해야 값1이 저장된 값을 볼 수 있다.#include int main(void) { int a[10] = { 6,5,4,3,9,8.. 2019. 3. 19.
함수/재귀함수 함수지정하기#include void point(int input) { printf("보유하고있는 포인트는 :%d\n", input); } int main(void) { point(10); point(30); point(86); system("pause"); } 소스코드 중 중복적으로 작업하거나, 똑같은 내용의 코드가 반복적으로 작성을 해야할경우 별도의 함수로 만들어 함수를 호출하는 식으로 소스코드를 줄일수 있다. 함수를 만들기위해서는 아래와 같은 형식을 유지해야한다. 반환자료형 함수명(매개변수){ 수행할명령허 return 반환할 값; } 여기서 매개변수와 return은 꼭 필요한 부분은 아니기때문에 생략도 가능하다. 맨위의 소스코드를 보면, 반복적으로 출력하기위한 "보유하고있는 포인트는 : 부분을 출력해.. 2019. 3. 19.
반복문(for, while) #include int main(void) { for (int i = 0; i for함수내에 조건에 충족할때까지 계속해서 특정구문의 코드를 실행한다.->반복문을 탈출하고자 할때에는 해당 위치에 break구문을 넣어준다. 소스코드는 for(초기화;조건;반복끝명령어){반복적으로 실행할 내용}이 된다.결과는처럼 나오게 된다. 단, for문을 사용할때 무한루프(Loop)에 걸리지 않도록 조심해야한다. 예시로 따지만for(int i=0; i반복문을 탈출하고자 할때에는 break구문을 넣는다.특정 문자를 여러번 출력하는 예제이다. while문은while(조건){실행할 내용}으로 작성한다.사용자에게 int형 n과 char형 a변수에 저장될 값을 저장 받는다. 그후, n의 값을 1씩 감소하면서 1이 감소할때마다 화면에.. 2019. 3. 18.