[C언어]정적변수(static), 외부변수(extern), 레지스터변수(register)
정적변수(static) : 정적으로 할당되는 변수이다. 정적변수의 특징 - 지역 변수와 전역 변수의 성질을 같이 가지고 있다.- 지역 변수처럼 선언 된 함수 안에서만 사용이 가능하다.- 전역 변수처럼 프로그램이 종료 될 때까지 메모리 공간에 존재하게 된다.- 지역 변수와는 달리 해당 함수가 반환을 하더라도 소멸되지 않는다. C 및 관련 언어에서는 정적 변수와 기타 개념들 모두 static 키워드가 사용된다. 정적 변수 예제 #include void increase() { int num1 = 0; // 변수 선언 및 값 초기화 printf("%d\n", num1); // 변수 num1의 값을 출력 num1++; // 변수의 값을 1씩 증가 } int main() { increase()..
programming/c, c++ 2017. 12. 14. 20:23
[C언어] 재귀 함수(함수의 재귀적 호출)란? , 피보나치, 팩토리얼 수열
재귀 함수 : 자기 자신을 호출하는 함수 재귀 함수를 배워야 하는 이유 : 나중에 자료 구조나 알고리즘이 복잡한 문제를 단순화하는데 유용하게 쓸 수 있다.(정올에 많이 나온다..) 재귀 함수의 특징 1. 무한 루프를 막기위해 재귀 함수 끝을 정해줘야 한다.2. 코드를 단순화 하기 유용하다.3. 재귀 함수는 호출 시 마다 스택 공간을 이용해 무리하게 호출하면 오버플로우가 일어날 수 있다.4. 디버깅 밒 실행 흐름을 파악하기 힘들다. 재귀 함수의 예 – 팩토리얼 int factorial(int n){ If(n
programming/c, c++ 2017. 12. 14. 15:27
최근에 올라온 글
최근에 달린 댓글
TAG
- codegate
- overflow
- pwnable
- fastbindup
- srop
- pwable
- shellcoding
- hacking
- fsop
- tcache
- ebp change
- TLS
- 해킹
- heap
- stack reusing
- SQLi
- exit
- 본선가고싶다
- rt_sigreturn
- HackCTF
- oob
- pwnable.tw
- glibc
- FSB
- fastbin
- Total
- Today
- Yesterday