전체 글34 17_정적변수(static) static은 정적이라는 뜻을 가지고 있고, C언어에서 선언문이 한 번만 실행되며 프로그램이 종료될 때까지 데이터를 저장하는 기능을 가지고 있다. 프로그램 내에서 변수 또는 함수의 수명, 가시성 및 범위를 제어할 때 주로 사용한다. 코드에서 사용되는 위치에 따라(지역, 전역) 다른 의미를 가지며 변수와 함수 모두에 적용될 수 있다. 그렇다면 정적 지역, 전역 변수와 정적 함수를 예제로 static에 대해 알아보자. void PrintNum() { static int Num = 0; // 정적 지역 변수 ++Num; printf("정적 변수 Num : %d\n", Num); } int main() { PrintNum(); PrintNum(); PrintNum(); PrintNum(); return 0; }.. 2023. 4. 23. 16_지역, 전역변수(Local, Global Variable) Local은 지역이라는 뜻을 가지고 있고, Global은 전반적인, 세계적인 이라는 뜻이 있다. 롤이라는 게임에선 Global 궁극기(모든 지역에 영향을 주는 스킬)를 생각하면 될 것 같다. 그래서 지역변수와 전역변수의 차이점과 특성에 대해 알아보자. Local Variable(지역 변수) void PrintNum(int num) { printf("num Value : %d\n", num); printf("num Address : %p\n", &num); } int main() { int num = 0; // 메인 함수의 지역 변수 num int A = 10; // 메인 함수의 지역 변수 A if(num == 0) { A = 20; int B = 30; // if문 안의 지역 변수 B int num = .. 2023. 4. 20. 15_포인터(Pointer) Pointer는 가리키다라는 뜻이 있다. C에서 다른 변수, 혹은 그변수의 메모리 공간 주소를 저장하는 변수로 사용된다. 메모리는 컴퓨터의 물리적인 공간으로, 변수는 이 메모리 공간에 값을 저장하고 접근하는데 사용된다. 포인터가 가리키는 값을 가져오는 것을 역참조라고 한다. 포인터 p라는 변수에 a라는 포인터 변수 p = (*p) *p의 주소 : 3000 *p = &a[0] = 1000 주소 : 3004 주소 : 3008 주소 : 3012 먼저 int a[4]의 변수가 있고, p라는 포인터 변수에 a의 첫번째 인덱스 값을 넣는다. int *p = &a[0]; (포인터 변수 p는 a[0]의 주소 1000을 가리키고 있다.) -> 포인터 변수의 주소와 int a[4]의 주소는 임의로 설정한 주소이다. int.. 2023. 4. 17. 14_함수(Function) Function은 기능, 함수라는 뜻이다. 중복된 명령 코드를 손 쉽게 사용할 수 있도록 저장하는 기능을 함수라고 한다. 그래서 함수를 쓸 수록 가독성과 효율성이 증가된다. 함수를 정의하는 방법은 이러하다. 반환값 함수명(매개변수 리스트) { 함수의 정의; } 함수를 호출하는 방법은 이러하다. 함수명(매개변수 리스트) C언어에서 함수의 종류는 생각보다 많지않다. 반환값이 있고 매개변수가 없는 함수와 반환값이 없고 매개변수가 있는 함수와 반환값이 있고 매개변수가 있는 함수가 있다. 예시를 만들면서 다시 생각해보자. int ReturnThree() // 반환형이 있고 매개변수가 없는 함수 { printf("3을 넘깁니다.\n"); int three = 3; return three; } void Add(int.. 2023. 4. 14. 13_문자열(string) string은 문자열이라는 뜻을 가지고 있다. C언어에서는 배열의 종류중 하나로 문자형 데이터로 이루어진 배열을 의미한다. 문자열을 나타낼 수 있는 방법은 여러가지가 있다. char str[5]; str[0] = 'A'; str[1] = 'P'; str[2] = 'P'; str[3] = 'L'; str[4] = 'E'; for(int i = 0; i < 5; i++) printf("%c",str[i]); printf("\n"); 1. 먼저 배열의 요소에 데이터를 하나씩 넣어서 for문으로 출력하는 방법이 있다. char str2[5] = { 'A', 'P', 'P', 'L', 'E'}; for(int i = 0; i < 5; i++) printf("%c", str2[i]); printf("\n"); 2... 2023. 4. 11. 연남동 나들이 이자카야 '쿠시노 주방' 날도 풀리고 친구들과 홍대 입구역에서 내려 좀 걸어가면 있는 쿠시노 주방에 갔다. 오후 6시쯤 도착을 했지만 앞에 기다리는 팀만 14팀이 있었다. 하지만 여기까지 왔는데 꼭 먹어봐야지 하는 맘으로 15번째 대기 순번에 참전했다. 그래서 기다리는 동안 옆에 있는 코노에서 한 시간을 때웠다. 1시간이 지났는데도 아직도 9팀이 남아있었다. 그래서 숲길공원좀 걷다가 쿠시노 주방 근처에 있는 칵테일바에서 한 잔씩 하고 떠드는 사이 대기 번호 4번까지 오게 되었다. 그 후 가게 앞에서 30분 기다린 끝에 들어가게 되었다. 들어가자마자 쿠시노 주방 대표 메뉴인 쿠시노 나베와 한우 타다키를 바로 시켰다. 밥도 주는데 사진찍기도 전에 누가 벌써 한입 쳐먹었다. 기대했던 쿠시노 나베의 맛은 토마토 스파게티와 짬뽕이 섞인 .. 2023. 4. 9. 이전 1 2 3 4 5 6 다음