Programming/C, C++

728x90
반응형
부정 연산자 !=두 피연산자가 같지 않음을 검사하는 데 사용#include int main() { int a = 5; int b = 1; // != 연산자의 결과를 출력 int result = (a != b); printf("결과: %d\n", result); // a와 b가 같지 않으므로 1이 출력 return 0;}#include int main() { int a = 1; int b = 1; // != 연산자의 결과를 출력 int result = (a != b); printf("결과: %d\n", result); // a와 b가 같으므로 0이 출력 return 0;}
조건식거짓(false = 0)참(true = 1)#include void main() { int a=1, b=2, c=3, i, j; char d='w'; i = (a >= 2) && (d == 'w'); j = (b  첫 번째 조건식i = (a >= 2) && (d == 'w');a >= 2는 1 >= 2로 거짓(false = 0)d == 'w'는 참(true = 1)논리 AND 연산자 &&두 피연산자가 모두 참일 때만 참이므로false && true는 false 따라서, i = 0  두 번째 조건식j = (b b d == 'w'는 참(true = 1)논리 OR 연산자 ||두 피연산자 중 하나라도 참이면 참이므로false || true는 true따라서, j = 1따라서, 프로그램의..
do-while먼저 루프 본체를 실행하고,그 다음에 조건을 검사하여 조건이 참이면 다시 루프를 반복한다. 조건이 거짓이 될 때까지 이 과정을 반복한다.즉, 최소한 한 번은 루프 본체가 실행된다. #include int main() { int n = 0, sum = 0; do { n++; sum += n; } while (n n과 sum을 각각 0으로 초기화do-while 루프 시작n이 1씩 증가(n++), 증가된 n 값을 sum에 더한다(sum += n).n이 5보다 작을 동안 루프가 계속된다.각 반복에서 n과 sum의 값첫 번째 반복: n = 1, sum = 1두 번째 반복: n = 2, sum = 1 + 2 = 3세 번째 반복: n = 3, sum = 3 + ..
중첩된 반복문 forint a, b, sum=0;for(a=0; a1; b--) sum+=1;   외부 루프for(a=0; aa = 0부터 a = 10까지 11번 실행   내부 루프    for(b=5; b>1; b--)b = 5부터 b > 1일 때까지 5, 4, 3, 2로 4번 실행 따라서, 내부 루프는 외부 루프가 한 번 실행될 때마다 4번 실행   전체 sum의 값 계산각 반복마다 sum이 1씩 증가하므로 최종 sum의 값은 44외부 루프의 실행 횟수: 11번내부 루프의 실행 횟수 (외부 루프 1회당): 4번따라서, 전체 반복 횟수는 11 * 4 = 44번   만약 외부 루프의 조건이 a 외부 루프는 a = 0부터 a = 9까지 총 10번 실행 전체 sum의 값 계산외부 루프의 실행 횟..
(x > y) ? x : y;이 형식은 C 언어에서 삼항 연산자 (ternary operator) 또는 조건 연산자 (conditional operator)라고 불린다.이 구문은 다음과 같은 형태를 가지고 있다.condition ? expr1 : expr2;condition: 평가될 조건, 이 조건이 참이면 expr1 반환expr1: 조건이 참일 때 실행되는 표현식expr2: 조건이 거짓일 때 실행되는 표현식예를 들어,(x > y) ? x : y;는 x가 y보다 크면 x를 반환하고, 그렇지 않으면 y를 반환이 구문은 if-else 문을 간단하게 표현할 수 있어서 코드가 더 간결해지는 장점이 있다.   예시#include int max(int x, int y) { return (x > y) ? x :..
조건문프로그램의 흐름을 제어하는 데 사용주로 사용되는 조건문 if, else if, else, switch if 문if 문은 주어진 조건이 참인지 거짓인지에 따라 특정 코드 블록을 실행 else if 문else if 문은 앞선 if 문이 거짓일 때, 다른 조건을 테스트 else 문else 문은 모든 if 및 else if 조건이 거짓일 때 실행되는 코드 블록 switch 문switch 문은 하나의 변수 값에 따라 여러 코드 블록 중 하나를 실행할 때 사용각 코드 블록은 case 라벨로 구분switch (변수) { case 값1: // 변수 값이 값1일 때 실행되는 코드 break; case 값2: // 변수 값이 값2일 때 실행되는 코드 bre..
복합 대입 연산자C 언어에서 += 연산자는 복합 대입 연산자 중 하나이다.변수에 값을 더하고그 결과를 다시 변수에 저장하는 기능좀 더 자세히 설명하면,x += y는 x = x + y와 같은 의미이 연산자를 사용하면 코드를 더 간결하고 읽기 쉽게 만들 수 있다.   예시#include int main() { int x = 5; int y = 3; x += y; // x = x + y 와 동일 printf("x의 값: %d\n", x); // 결과는 8 return 0;}   특징간결함: x += y는 x = x + y보다 짧고 간결효율성: 컴파일러 수준에서 최적화가 이루어질 수 있다.다양한 자료형 지원: 정수형, 실수형 등 여러 자료형에서 사용할 수 있다.   += 외 다른 복합..
증감 연산자변수의 값을 1씩 증가시키거나 감소시키는 연산자이 연산자는 전위형(prefix)과 후위형(postfix)으로 나눌 수 있다.   전위형 연산자 (prefix)++a 또는 --a변수의 값을 먼저 증가시키거나 감소시킨 후에 해당 값을 사용한다.   후위형 연산자 (postfix)a++ 또는 a--변수의 현재 값을 사용한 후에 값을 증가시키거나 감소시킨다.int a = 2, b = 3, c = 4;a = b++ + --c;// a = 3++ + --4; 여기서 ++는 연산 후 증가 --는 감소 후 연산// a = 6// b = 4// c = 3printf("Wn %d %d %d", a, b, c);b = --a + c++;printf("Wn %d %d %d", a, b, c);// b = --6 +..
포인터(pointer)C 언어에서 포인터(pointer)는 메모리 주소를 가리키는 변수포인터는 다른 변수나 메모리 주소의 위치를 저장하고 이를 통해 메모리의 특정 위치에 접근할 수 있다. 포인터는 C 언어에서 매우 중요한 개념으로, 메모리 관리, 배열 처리, 함수 호출 등에서 유용하게 사용된다.   포인터의 주요 개념과 사용법1. 포인터 선언포인터를 선언할 때는 데이터 타입 뒤에 *를 붙인다.int *ptr; // 정수형 포인터 변수 ptr 선언 2. 포인터 초기화포인터는 선언한 후 메모리 주소를 할당받아야 한다.주소 연산자 &를 사용하여 변수의 주소를 얻을 수 있다.int var = 10;int *ptr = &var; // 변수 var의 주소를 포인터 ptr에 할당 3. 포인터 사용포인터를 통해 간접 ..
goto문프로그래밍에서 특정 위치로 코드 실행을 바로 점프(jump)시키는 명령어프로그램의 흐름을 제어할 때 사용되며, 대부분의 프로그래밍 언어에서 제공하지만, 현대의 많은 프로그래밍 언어에서는 goto문을 사용하지 않는 것이 권장됨.  goto문의 기본적인 사용법레이블 정의: 코드 내에서 점프할 위치를 정의goto문 사용: 특정 조건이나 상황에서 해당 레이블로 점프C 언어에서의 goto문 사용 예시#include int main() { int i = 0; start: // 레이블 정의 printf("i = %d\n", i); i++; if (i  i가 5보다 작을 때마다 start 레이블로 점프하여 i의 값을 출력하고i가 5가 되면 프로그램을 종료한다. 장점단순한 예제..
표준 출력함수, 표준 입력함수 // 표준 출력함수 // printf() - 화면에 여러 종류의 자료를 출력 // putchar() - 화면에 1개의 문자를 출력 // puts() - 화면에 문자열을 출력 // 표준 입력함수 // scanf() - 키보드를 통해 여러 종류의 자료를 입력 받음 // getchar() - 키보드를 통해 1개의 문자를 입력 받음 // gets() - 키보드를 통해 문자열을 입력 받음 #include void main() { char c = 'A'; int i = 10, j = 20, k = 30; printf("간단한 출력 프로그램\n"); printf("c=%c,c의 아스키 코드값은 %d\n", c, c); // 순서대로 %c, %d 대응 printf("i=%d,j=%d,k=..
⛔ C4996 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. Visual Studio에서는 보안상의 허점 방지를 위해 scanf 대신 scanf_s를 사용하는 것을 권장하고 있다. 해당 에러를 무시하고 컴파일 하려면 선행처리기 #pragma warning(disable: 4996)을 선언해주면 된다. #include #pragma warning(disable:4996)
선행처리기 종류 #include // 파일 포함 #define // 매크로 상수, 함수 정의 - 단순 치환 자료 // 조건부 컴파일 #if #else #elif #endif #define 예시 (상수) #include #define ADDR "서울시 강남구 역삼동" #define TEL "02-1234-1234" void main() { printf("주소: %s\n", ADDR); printf("전화번호: %s\n", TEL); } #define 예시 (함수) // #define 예시 (함수) // #define 매크로명(인수) (수식) // #define 매크로명(인수, 인수) (수식) // #define AREA(x) (3.141592*(x)*(x)) // #define HAP(a, b) (a+b)..
#include void main() { int i, sum; // 변수 i, sum 선언 for (i = 1; i
#include // 변수를 함수 외부에 선언한 예 int num; // 전역 변수로 선언, 프로그램 어디서나 사용 가능 void main() { ... } sub() { ... } // 변수를 함수 내부에 선언한 예 void main() { int i; // 지역변수로 선언, main 함수 내에서만 사용 가능 ... } sub1() { int i, j; // sub1 함수 내에서만 사용 가능, main 함수 내의 변수 i와는 별개 } int a = 100; void func() { int a = 200; printf("func()에서 a의 값 ==> %d \n", a); } int main() { printf("main()에서 a의 값 ==> %d \n", a); func(); }
#include // 표현 범위를 벗어나는 예시 void main() { short int num1, num2; num1 = 32767 + 1; num2 = -32768 - 1; printf("num1=%d\n", num1); printf("num2=%d\n", num2); } #include void main() { int num1, num2; num1 = 32767 + 1; num2 = -32768 - 1; printf("num1=%d\n", num1); printf("num2=%d\n", num2); }
#include // 열거형의 사용 예 void main() { enum day1 {SUN, MON, TUE, WED, THU, FRI, SAT} d1; enum day2 {sun=2, mon, tue, wed, the, fri, sat } d2; d1 = WED; d2 = wed; printf("열거형 d1 저장된 값은 %d 입니다.\n", d1); printf("열거형 d2 저장된 값은 %d 입니다.\n", d2); }
#include // 문자형의 사용 예 void main() { char ch; int in; ch = in = 'A'; printf("ch = %d\n", ch); // 65 printf("in = %d\n", in); // 65 ch = in = 100; printf("\n ch = %c\n", ch); // d printf("in = %c\n", in); // d }
#include // 변수(variable) - 변하는 수 // 상수(constant) - 항상 같은 수 // 계수(coefficient) - 변수에 붙어있는 상수인 인수 // 2x + 3 2계수 x변수 3상수 // 변수(variable)의 사용 예 void main() { int a, b; a = 100; b = 50; printf("a=%d,b=%d\n", a, b); }
#include void main() { printf("hello C 프로그래밍 \n"); }
식별자(identifier) 변수, 상수, 함수, 사용자 정의 타입 등에서 다른 것들과 구분하기 위해서 사용되는 변수, 상수, 함수, 사용자 정의 타입의 이름 등 '이름'을 일반화 해서 지칭하는 용어. 규칙 1. 영문 대소문자, 숫자, 언더바(_)만 사용할 수 있다. 숫자로 시작될 수 없음. 2. 명령어를 식별자로 사용할 수 없다. 주의) 언더바(_)로 시작되는 이름들은 주로 C언어 자체나, 운영체제에서 제공되는 하위 기능의 이름으로 사용되는 경우가 아주 많다. '언더바로 시작되는 식별자는 시스템에서 사용하는 식별자'라는 것이 표준은 아니지만 가능하면 밑줄로 시작되는 식별자를 사용하지 않는 것이 좋음. 4. Visual Stdio 2015 이상 버전에서 달러($)를 사용할 수 있다. 문장의 어떤 위치든지..
728x90
반응형
gameuiux
'Programming/C, C++' 카테고리의 글 목록