#include 디스크 상에 수록된 특정 파일의 내용을 원시프로그램에 포함시키는 기능 #include <파일이름>:C에서 지원 <프로그램에서 지원> #include "파일이름": 사용자 정의
#define 프로그램에서 특정 문자열을 정의하고 적절하게 치환할 때 사용 #define 매크로 이름 #define 매크로 이름 (인수)
empty는 새로만들기에서 C++소스파일 ->파일이름 적기 header file 만들때도 똑같이 새로만들기 -> c/c++ header file로 생성
######################## 디파인이 많을 수록 코드의길이가 많고 어려워진다. 1~2개가 적당. 함수들도 define할 수 있다. 많아도 10줄까지만, 헤더파일을 넣게되면 더 보기 어렵다.
#define mask 0x0f
#undef 이전에 정의된 매크로를 해체하는 기능. 조건부 컴파일 지시어에서는 #if, #else #endif로 사용되며 반드시 endif를 써야됨 #if 조건식 문장1: ##--->변수의 유효범위 @지역변수 -정의된 블록 내부에서만 사용 가능한 변수 #include "stdafx.h" #include <stdio.h> //printf(), scanf()
int main(int argc, char* argv[]){ int a=100; //int main(int argc, char * argc[])에 속한 a if(a==100){ int a=10; printf("%d\n",a); } printf("%d\n",a); } ------실행결과 10 100 계속하려면 아무 키나 누르십시오 . . . ------------------ #-->전역변수
#include "stdafx.h" #include <stdio.h> //printf(), scanf() int a=100; //main문 외부에 선언된 전역변수
int main(int argc, char* argv[]){ a=10; if(a==100){ printf("%d\n",a); } printf("%d\n",a); } 10 계속하려면 아무 키나 누르십시오 . . .
<예제> int main(int argc, char* argv[]){ int i; for(i=0;i<10;i++){ int a=100; a++; printf("%d",a); } } ----------실행결과 101 101 101 101 101 101 101 101 101 101 계속하려면 아무 키나 누르십시오 . . . ------------------ #include "stdafx.h" #include <stdio.h> //printf(), scanf()
int main(int argc, char* argv[]){ int i; for(i=0;i<10;i++){ static int a=100; //static 프로그램과 별도로 공간을 잡아서 a라는 변수 공간을 만듬. a++; printf("%d\n",a); } }
전역 - main 위쪽 변수의 수명 전역&정적:프로그램종료 - 코드는 쉬우나 성능이 낮아진다.(메모리를 할당함) 지역변수:선언 지역을 벗어날 경우
int main() {//1.두수를 입력 받아 큰 수를 출력하는 함수를 만드시오. int i,j; scanf("%d",&i); scanf("%d",&j); print("%d %d",printFunc(i,j));
} printFunc(int a, int b) { if (a >= b) return a;//printf(%d,a); else return b;//printf(%d,b); } ----------------------- big(){ 식 } int main() { big(); }
2.수를 입력 받아 소수를 판별하는 함수를 만드시오 void prime(){ int num, i, cnt=0; scanf("%d",&num); for(i=1;i <= num;i++){ if(num%i == 0) {cnt++;} } if(cnt==2){printf("%d",num);} }
int main() {/*2.수를 입력 받아 소수를 판별하는 함수를 만드시오 */
prime(); } --------------------- 3.절대값을 구하는 함수를 만드시오 int ab(int su){ if(su >0) return su; else if(su == 0) return su; else su * -1; }
int main() {/*3.절대값을 구하는 함수를 만드시오 */ int num; scanf("%d", &num); ab(num); } 4.거꾸로 수를 반환하는 함수를 만드시오 int reverse(int n){ int ret=0, tmp; while(1){ ret+= n%10; n = n/10; if(n==0){break;} ret=ret*10; } return ret; }
int main() {/*4.거꾸로 수를 반환하는 함수를 만드시오 */ int num; scanf("%d", &num); reverse(num); printf("%d",reverse(num)); }