c, cpp
-
C++ Standard Template Library(STL)c, cpp 2024. 7. 2. 01:43
c++ STL은 algorithms, containers, functions, iterators를 제공한다.자료구조를 직접 만들지 않아도 STL을 사용하면 list, stack, queue, deque, priority_queue, set, map등을 사용할 수 있는 것이다. 1. 구성1.1. Containerssequence containers는 iterator를 사용할 수 있고 search가 가능하지만, container adaptors는 iterator를 사용할 수 없고 search가 불가능하다.구분ContainerDescriptionSequenceContainersvectorC의 배열같은 것이다. 배열의 끝에서 삽입 및 삭제는 O(1)의 시간복잡도를 가지지만, 배열의 앞에 삽입 및 삭제는 O(n)..
-
C언어 자료형 종류(C data types)c, cpp 2024. 6. 19. 23:25
C언어의 컴파일러마다 자료형의 크기가 다르다. C의 표준을 정하는 ANSI에서 정확한 자료형의 크기를 정하지 않고, 다음과 같은 정도로만 자료형의 크기를 표준화하고있기 때문이다."short와 int는 최소 2바이트이되, int는 short와 크기가 같거나 더 커야 한다."자료형의 크기는 sizeof연산자를 사용하면 알 수 있다. 1. 메인 타입 (Main types)자료형크기서식 문자(format specifier)범위char1바이트%c-128 ~ +127unsigned char1바이트%c0 ~ +255shortshort intsigned shortsigned short int2바이트%hi 또는 %hd-32768 ~ +32767unsigned shortunsigned short int2바이트%hu0 ~ ..
-
C언어 연산자 우선순위(Operator Precedence in C)c, cpp 2024. 6. 19. 22:32
순위연산기호연산자결합방향1()함수호출→[]인덱스->간접지정.직접지정++ (postfix)-- (postfix)후위증가 및 감소2++ (prefix)-- (prefix)전위증가 및 감소←sizeof바이트 단위 크기 계산~비트 단위 NOT!논리 NOT-, +부호 연산(음수와 양수의 표현)&주소 연산*간접지정 연산3(casting)자료형 변환←4*, /, %곱셈, 나눗셈, 모드 연산→5+, -덧셈, 뺄셈→6>비트이동→7, =대소비교→8==, !=동등비교→9&비트 AND→10^비트 XOR→11|비트 OR→12&&논리 AND→13||논리 OR→14? :조건연산←15=, +=, -=, *=, /=, %=, >=, &=, ^=, |=대입연산←16,콤마연산→
-
C언어의 기본 문법c, cpp 2024. 6. 19. 22:21
0. 컴파일windows에서 visual studio를 사용한다면 해당 ide가 버튼 하나로 컴파일을 자동으로 해준다.gcc 또는 g++로 cli로 컴파일 하는 방법은gcc -o (실행파일 이름) (소스파일)gcc -o test1.exe test1.cpp #windows의 경우gcc -o test1.out test1.cpp #linux의 경우여러 소스파일 컴파일 방법gcc -o (실행파일 이름) (소스파일1) (소스파일2) (소스파일3)gcc -o test1.exe test1.cpp num.cpp func.cpp1. 주석/* 여러 행주석 */// 단일 행 주석2. 반복문반복문의 탈출: break반복문의 생략: continue2.1. whilewhile(값){}값이 0이면 while안에 명령들을 실행하지..
-
C언어의 이해c, cpp 2024. 5. 27. 15:20
개요대학교를 막 들어가서 1학년 1학기에 C언어를 막 배우거나, C언어 문법 책을 사서 의미없이 무작정 문법을 익혔을 때가 있었다. 그때는 컴퓨터에 대해 아무것도 몰라서 그럴수밖에 없었지만, 지금은 여러 cs지식이 쌓여서 의미있게 문법을 익힐 수 있다.초심으로 돌아가 C언어의 기본 문법을 다시 살펴보며 여러가지 의미를 살펴보려고 한다. 아직 C언어를 완벽하게 이해하기에는 많은 부분이 부족하지만 완벽하게 이해할 수 있다고 생각하지도 않는다. 처음 C언어 문법을 공부한지도 10년이 되어간다. 또 미래에는 다른 의미를 찾을 수 있겠지 생각하고 중간 정리를 한다.역사B언어가 성공함에 따라 C언어가 Unix에서 사용되기 위해 개발되었다. 그 이후 C언어가 가장 많이 사용되는 언어중 하나로 성장하게 되면서, C컴파..
-
구조체 비트 필드 (struct bit field)c, cpp 2024. 3. 3. 19:07
평소에는 바이트단위만 사용하지만, 저수준 프로그래밍을 할 때는 비트 단위로 값을 가져오거나 저장해야 하는 상황이 있다. 이때 구조체 비트 필드를 사용하면 유용하다. 비트필드는 다음과 같이 선언한다. struct 구조체이름 { 정수자료형 멤버이름 : 비트수; }; 다음은 의 iphdr구조체이다. 보면 unsigned char ihl:4, version:4;라고 되어있다. 각각 4비트씩 저장공간을 가지는 것이다. 참고: https://dojang.io/mod/page/view.php?id=472