프로그래밍/C언어 스피비 2011. 3. 22. 16:42
이 함수 정의만으로 충분할 것 같은데 왜 쓰잘때기 없이 '함수 원형'이란게 필요할까요? 거기엔 며느리도 모르는 깊은 뜻이 담겨져 있습니다. 첫째, 함수 원형은 function_name() 함수가 int형 전달인자를 두개 가진다는 사실을 컴파일러에게 알려줍니다. 즉, 프로그램이 function_name()에 전달인자를 제공하지 않으면 컴파일러는 함수 원형에 근거하여 에러를 검출합니다. 둘째, function_name() 함수는 계산을 끝냈을때(함수 정의 반환) 반환값을 레지스터나 메모리에 값을 임시 저장해 두는데 이 저장된 값을 호출한 함수(여기서 main함수 ; main함수내에서 function_name()함수를 호출하였으므로)가 그 위치에서 값을 가져옵니다. 이 과정에서 함수 원형에 int라는 반환 데..
프로그래밍/C언어 스피비 2011. 3. 20. 23:42
래퍼함수(Wraaper) : 기존함수를 한 번감싸서 원래 동작에 약간의 처리를 추가하는 함수. 별거 없습니다.. 말 그대로 뭔가를 감싸는 함수이지요. 예를들어 C로 만들어진 라이브러리가 있는데 이를 C++과 같이 클래스 형식으로 사용하고자 한다면 이 라이브러리를 감싸주는 클래스가 바로 래퍼 클래스입니다. 또 예를들어 어떤 이미지 처리 라이브러리가 있다고 합시다. 이 라이브러리를 사용할려면 초반 초기화 작업을 하는데 각종 구조체를 세팅하고 어쩌고 그러다보니 꽤나 긴 코드가 작성된다고 합시다. 이때 그런 초기화를 한방에 몽땅 몰아때려놓은 함수가 바로 래퍼함수입니다. 걍 어디다가 갖다 붙이면 래퍼함수가 되는거니 딱히 래퍼함수라는 용어에 부담을 느끼실 필요는 없습니다.:) 출저: http://blog.naver..
프로그래밍/C언어 스피비 2011. 3. 17. 10:22
1. const int a = 100; : 변수 상수화 2. const int* a; : 상수지시 포인터 3. int* const a; : 포인터 상수 4. const int* const a = 100; : 둘다~ //위에는 일반적인 const 사용이다!!! //밑에 5,6번은 변태같은 const를 소개한다 5. const int * a; : 상수지시 포인터(헷갈린다.. 이렇게는 안쓰지만 비쥬얼상에서 실행이됨) 6. const int const * a; : 상수지시 포인터( 컴파일 경고뜸! 동일한 형식지정 두번사용했다고!!) const를 쓰는 이유? 상수화 시켜서 데이터를 보호하기 위해서임! 사용자로 하여금 그 값을 변경못하게함!
프로그래밍/C언어 스피비 2011. 3. 12. 12:38
C언어의 키워드 1.auto : 기본적인 변수의 저장방식을 나타내는 키워드 2.break : for,while,switch,do...while문을 조건없이 마치는 명령 3.case : switch문 내에서 사용되는 명령 4.char : 가장 간단한 데이터형 5.const : 변수가 변경되지 않도록 방지하는 데이터 지정자 6.continue : for,while,switch,do...while문을 다음 반복동작으로 진행시키는 명령 7.default : case문에 일치하지 않는 경우를 처리하기 위해 switch문에서 사용되는 명령 8.do : while문과 함께 사용되는 순환명령.순환문은 최소한 한번 실행됨. 9.double : 배정도 부동 소수형값을 저장할 수 있는 데이터형 10.else : if문이 F..
프로그래밍/C언어 스피비 2011. 3. 10. 11:49
실질적인 컴파일 이전에 미리 처리되는 문장으로 선행처리기라고도 한다. 컴파일러는 사용자가 작성한 코드를 컴파일하기에 앞서 전처리문에서 정의해 놓은 작업들을 먼저 수행한다. 종류로는 #define, #if, #ifdef, #ifndef, #defined, #undef 등이 있다. 이것은 기존에 있는 방대한 소스 코드를 지우지 않고 활성화와 비활성화하는 데에 가장 많이 이용된다. 즉, 기존에 있는 소스 코드를 건드리지 않고 부분적인 컴파일을 하는 것이다. C의 전처리문이 오는 줄(Line)의 첫 문자는 항상 '#'으로 시작한다. ANSI 표준에 따른 C의 전처리문의 종류 - 파일 처리를 위한 전처리문 : #include - 형태 정의를 위한 전처리문 : #define, #undef - 조건 처리를 위한 전처..