gets()는 버퍼 오버플로우 취약 → 사용 금지 main() 실행 전 필수 설정 수행 char (1B), short (2B), int (4B), long (4B), long long (8B) double (8B), float 사용 시 f 접미사 필요 double) char 단일 문자, char[] 문자열 (널 문자 \0 포함) long 크기는 플랫폼에 따라 다름 const 키워드: 변경 불가능한 변수 (상수) 선언 printf() 포맷 지정자: %d (정수), %u (부호 없는 정수), %f (float), %lf (double) \n, \t 등 제어 문자 활용 0x 접두사 사용 12 → 0x0C → 0b1100 & (비트 AND), | (비트 OR), ^ (비트 XOR), ~ (비트 NOT) << (왼쪽 시프트), >> (오른쪽 시프트) scanf)scanf("%d", &변수); scanf("%s", 변수); → 공백 이후 입력 불가 gets(변수); → 개행(\n) 기준 입력 (취약점 있음) fgets(변수, 크기, stdin); 사용 추천 <string.h>)char str[6];
str = "hello"; // (X) 직접 대입 불가능strcpy(dest, src); 함수 사용 strcmp(str1, str2)+, -, *, /, % ++a (전위 증가), a++ (후위 증가) ==, !=, >, <, >=, <= &&, ||, ! &, |, ^, ~, <<, >> (자료형) 값 res = (++a, ++b);): 마지막 값이 결과 (조건) ? 참값 : 거짓값; if-else, switch-case)if 조건문: if (조건) { 실행문; }
else { 실행문; }switch-case: switch (변수) {
case 값1: 실행문; break;
case 값2: 실행문; break;
default: 실행문;
}for, while, do-while)for 문: for (초기식; 조건식; 증감식) { 실행문; }while 문: while (조건) { 실행문; }do-while 문 (최소 1회 실행): do { 실행문; } while (조건);break 활용break로 반복 종료 continue는 다음 반복 실행
안녕하세요!
VEDA 3기 지원생입니다!
혹시 veda에 대해서 궁금한게 있는게
가능하시다면 질문드려도 괜찮으실까요?