language

    반복 제어문 for

    for문 for문 예제 중첩 for문 중첩 for문 예제 1. for문 반복문: 특정 코드를 반복해서 실행하는 제어문. for문은 반복의 횟수가 정해져 있을 때 주로 사용 for(초기식; 조건식; 증감식) { 반복할 코드 } 초기식 : for문의 실행 횟수를 확인하는 변수의 선언 및 시작값 설정 for문의 시작과 동시에 한 번만 실행 조건식 : for문의 반복이 종료될 조건 초기식에서 선언한 변수가 어떤 조건이 되면 반복을 종료할 것인지 지정 증감식 : 초기식에서 선언한 변수가 조건식까지 도달하기 위해 필요한 연산 2. for문 예제 int main (){ int j =0; for(j; j

    enum과 switch문

    enum switch문 예제 1. enum main 함수 바깥쪽에서 switch문의 case에 상수값 대신에 사용할 이름 지정 enem { 이름1, //0 이름2, //1 이름3 //2 } enem { 이름1 =1, //0 이름2, //1 이름3 //2 enum SELECT { START =1, PAUSE, END }; int main(){ int sel; printf("1.시작\n2.일시정지\n3.종료\n>>> "); scanf_s("%d", &sel); puts(""); switch(sel) { case START: puts("시작합니다"); break; case PAUSE: puts("잠시 멈춥니다"); break; case END: puts("종료합니다"); break; } } 월을 입력받아서 해..

    이클립스 내에서는 파일이 있는데, 실제 경로에서는 파일이 사라져서 오류가 발생하는 경우

    이클립스 내에서는 파일이 있는데, 실제 경로에서는 파일이 사라져서 오류가 발생하는 경우

    코드에는 문제가 없는데 왜인지 도저히 알 수 없는데 에러가 발생한다면? 이클립스 사용 시 생각보다 자주 발생하는 에러가 있다. 그건 바로! 이클립스 내 가상경로와 실제 경로가 연동되지않아서 차이가 날때 발생하는 오류다. 해당 경로에 class 파일이 있어야 했는데 가보면 없다. DAOImpl파일(오류가나는 파일)을 src(기본경로)로 옮겼다가 다시 기존 경로로 옮기면 class파일이 다시 생성된다. 진짜 생각보다 자주 발생하니까 어제까지만 해도 정상 작동하던 코드가 갑자기 안되거나 코드는 절대 틀리지 않았는데 작동이 안될 때 꼭 실제 경로를 한 번 가보자.! + 추가로 비슷한 문제가 있을 때, 전체 재컴파일 하는 방법도 있다. project > clean 을 진행해보자

    Dev++ 에서 for 문 돌릴 때 오류

    Dev++ 에서 for 문 돌릴 때 오류

    초기식에서 변수를 선언했을 때 GCC에서 컴파일 에러가 발생한다. 코드가 틀린건 줄 알고, 왜 이런지 잘 몰라서 한 참 고민했는데 컴파일 에러였다. 경고문구는 아래와 같았다. [Error] 'for' loop initial declarations are only allowed in C99 or C11 mode [Note] use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 to compile your code 원인 : for 반복문의 초기식에서 변수를 선언하는 방식은 C99부터 지원하고, GCC 기본 설정은 C89인것 같다. 그래서 초기식에서 변수를 선언했을 때 컴파일 에러가 발생한다. 해결 : Dev-C++에서는 도구(T) > 컴파일러 설정(C)에서 컴파..

    조건 제어문

    조건 제어문

    if문 예제 if else if 문 switch문 코드는 위에서 아래로 흐른다. 코드의 흐름을 제어할 수 있는 함수라하여 제어문이라고 부른다. 조건 제어문 : if, switch 반복 제어문 : for, while 1. if 문 조건문 - 조건식에 따라 코드의 실행 순서가 결정되는 제어문 if (조건식) { 조건식이 참이면 실행될 코드 } 조건식이 참이면 if 내부의 코드를 실행한 후 다음 코드를 진행 조건식이 거짓이면 if문 전체를 건더뛰고 다음 코드를 진행 *모든 제어문은 기본적으로 중괄호를 이용하여 실행될 코드를 분류 *실행될 코드가 한 줄이라면 중괄호를 사용하지 않아도 실행될 코드로 인식 int n1, n2; printf("정수 두개 입력: "); scanf_s("%d %d",&n1,&n2); i..

    입력함수

    scanf() while(getchar() !='\n') 예제 1. scanf() scanf() : 입력 함수 프로그램이 동작하고 있는 중간에 데이터를 입력하여 프로그램에 입력한 데이터를 전달 scanf("서식문자", 변수주소); scanf_s("서식문자", 변수주소, 허용크기); *허용 크기는 문자열을 입력 받을 때 사용 (byte단위) /*정수 입력*/ int su; printf("숫자 입력: "); scanf_s("%d", &su);//int형 변수는 4byte 고정이기 때문에 허용크기 생략 printf("su : %d\n", su); /*실수 입력*/ float f1;//float : 4byte 실수, 7자리 까지 double f2;//double : 8byte 실수, 15~16자리 까지 prin..

    연산자 II

    논리연산자 증감연산자 비트연산자 1. 논리연산자 논리 연산 중 or 연산과 and 연산, not 연산을 의미하는 연산자 || : or연산자 (shift+ \) 조건식 1 || 조건식 2 조건식중 하나라도 참이면 결과는 참 조건식이 전부 거짓이면 결과는 거짓 && : and 연산자 조건식 중 하나라도 거짓이 있으면 결과는 거짓 조건식이 전부 참이면 결과는 참 ! : not 연산자 !(조건식) 조건식이 참이면 결과는 거짓 조건식이 거짓이면 결과는 참 int a = 10, b = 20; //AND 연산 printf("a != 10||b> c : %d, d:%d\n", c, d);// c:6, d:12 d = c++ * 2; printf("c++ *2 >> c : %d, d:%d\n", c, d);// c:7,..

    연산자

    연산자

    sizeof() 변수의 주소 사용 대입연산자 산술연산자 복합대입연산자 관계비교연산자 1. sizeof() 메모리에 할당 된 데이터 공간의 크기를 계산해주는 함수 결과는 byte 단위로 반환 int a = 5; double b = 2.0; printf("5/2.0 =%.1f\n", a / b); printf("a:%d\nb:%d\na/b:%d\n", sizeof(a), sizeof(b), sizeof(a / b)); /* 결과 * 5/2.0 = 2.5 * a:4 * b:8 * a/b:8 a는 int형이기 때문에 4byte, b는 실수형이기 때문에 8byte */ 2. 변수의 주소 사용 변수명 앞에 & 기호를 붙이면 해당 변수의 메모리 주소(위치)를 사용 주소값을 출력할 때는 %p 서식 문자 사용 int a..