IT/C and C++ 23

Main 함수

main도 일종의 함수이므로 인수를 가질 수 있고 리턴값도 가질 수 있다. main은 프로그램 실행 직후에 자동으로 호출된다는 점에 있어서 일반 함수와는 다른 특별한 면이 있으며 프로그램의 시작점이기 때문에 이름은 고정되어 있지만 함수의 원형은 고정적이지 않다. main 함수의 원형은 다소 복잡한데 다음과 같은 조합이 가능하다. void(또는 int) main(int argc,char *argv[],char *env[]); 리턴값은 int형이거나 void형 중 하나를 선택할 수 있으며 세 개의 인수를 가지는데 인수는 뒤쪽부터 차례대로 생략 가능하다. 그래서 main 함수의 가능한 원형은 다음 여덟가지나 된다. ① void main(void); ② void main(int argc); ③ void main..

IT/C and C++ 2006.08.13

[펌] 2차원 이상 동적할당.

2차원 배열의 동적할당char* text =new char[100][50];코드4. 2차원 배열의 동적할당?위와 같이 선언하시고 컴파일해보시기 바랍니다. 저는 마이크로소프트사의 C++ 컴파일러 v7.1을 사용하는데, 제 컴파일러의 경우에는 아래와 같은 컴파일 에러 메시지를 띄웁니다.error C2440: '초기화 중' : 'char(*)[50]'에서 'char *'(으)로 변환할 수 없습니다.표1. 컴파일 에러 메시지C++의 배정 연산자 '='은 좌측변수의 타입과 우측 값의 타입이 동일하거나 변환이 가능할 때 실행됩니다. 코드4의 경우에는포인터 배열을포인터 변수에 대입하려했기 때문에 에러가 난 것입니다.포인터 배열이란 포인터 변수들로 이루어진 배열을 말합니다. 즉, 배열의 값으로 주소가 들어가는 배열을 ..

IT/C and C++ 2005.10.09

fatal error C1010: unexpected end of ...

fatal error C1010: unexpected end of file while looking for precompiled header directive VC++은 파일 하나를 컴파일 할때 INCLUDE해야 할 파일이 너무 많아서 컴파일이 늦어지는 것을 막기위해 precompiled header라는 것을 만들었습니다. 이 헤더 파일(보통 stdafx.h)을 include한 .cpp는 미리 만들어진 precompiled header를 기본으로 사용하게 되어 있습니다. 하지만 다른 컴파일러로 만들어진 라이브러리(소스)에는 이런 것이 없겠죠. 그럼에도 VC++ 컴파일러가 자기는 precompiled header가 필요하다고 저런 이상한 메시지를 냅니다. 이런 경우.. 해당하는 모든 .cpp의 맨 첫줄에 ..

IT/C and C++ 2005.10.07

Do While문 희귀한 모습

1. 자주 쓰지는 않지만 알아는 두자. 2. 조건이 밑에 있으므로 보기 힘듬. 3. 무조건 한번은 실행하고 반복의 조건을 물어본다. 그럼 왜 ? 알아둬야 하나? -> 다른 사람의 소스를 해독하기 위해do ; while(조건식); -> 한줄로 가능 --------------------------------------------------------------------------------do { } while(조건식); --------------------------------------------------------------------------------do{ .. }while(조건식); -------------------------------------------------------------..

IT/C and C++ 2005.07.13