목록Home (246)
without haste but without rest
0. 구조체와 클래스 C의 구조체가 클래스구나 싶었는데 어느정도 맞았다. 차이점은 구조체의 경우 내부에 메소드를 포함할 수 없고, 클래스와 인스턴스의 관계 정도다. (C++ 클래스는 자바랑 또 어느정도 다른 듯한 느낌이다.) 1. 클래스 예제 #include #include using namespace std; class Student { private: string name; int age; public: Student(string n, int s) { name = n; age = s; } void show() { cout
0. C와 C++ C는 절차적 프로그래밍 언어, 함수 기반 C++은 객체 지향 언어 1. C++ 출력 #include using namespace std; int main(void) { cout input; std::cout
Reference - https://apophis0.tistory.com/48 나는 리눅스 사용환경이 VM이라 새로 설정하는 일이 자주 생긴다. 항상 VDI, VHD, VMDK 설정의 차이점이 무엇일까 궁금하던 참에 괜찮게 정리한 자료가 있어서 참고해서 요약한다. VDI (Vitural Disk Image) Oracle VM에서만 사용가능한 포맷 VHD (Virtual Hard Disk) Oracle VM, MS의 Hyper-V, 시트릭스의 Xen에서 구동가능한 포맷 VMDK (Virtual Machine Disk) Oracle VM, VMware 에서 구동가능한 포맷
Reference - C언어 코딩도장 1. 서식 지정해서 문자열 쓰기 - fprintf #define _CRT_SECURE_NO_WARNINGS #include int main() { FILE* fp = fopen("hello.txt", "w"); fprintf(fp, "%s %d\n", "Hello", 123); fclose(fp); return 0; } * r, w, a 옵션 등은 다른 언어들과 같다. * 파일을 포인터로 얻어서 fprintf에 값으로 전달한다. 2. 서식 지정해서 문자열 읽기 - fscanf #define _CRT_SECURE_NO_WARNINGS #include int main() { char s1[10]; int num1; FILE* fp = fopen("hello.txt", "..
Reference - C언어 코딩도장 1. 매크로 C언어는 컴파일러에서 전처리기(preprocessor)를 제공한다. 보통 전처리기는 반복되는 작업을 미리 정의할 때 사용한다. 매크로는 전처리기에서 #define 으로 정의할 수 있다. 2. 매크로 정의하기 아래 코드에서 #define 지시자는 ARRAY_SIZE 에 정수 10을 할당했다. 이 코드의 장점은 배열의 크기를 수정할 경우, 지시자 코드 한줄을 수정하는 것 만으로도 바꾸고자 하는 배열의 크기를 한번에 처리할 수 있다는 것이다. 이런 문제를 해결하기 위해서 매크로를 사용한다. #include #define ARRAY_SIZE 10 int main() { char s1[ARRAY_SIZE]; for (int i = 0; i < ARRAY_SIZE;..
Reference - C언어 코딩도장 1. 열거형 열거형은 enum 키워드를 사용한다. enumeration에서 따온 키워드다. 아래 코드에서 Sun에만 값을 할당했는데, 열거형에서는 처음 변수에만 값을 할당해주면 다음 값부터는 1씩 증가한다. 만약 아무것도 할당하지 않으면 0부터 시작해서 증가한다. 따라서 아래 코드에서 Sunday에 아무 값도 할당을 안 해주더라도 Tuesday가 리턴하는 값은 같다. #include enum DayOfWeek { Sun = 0, Mon, Tue, Wen, Thu, Fri, Sat }; int main() { enum DayOfWeek week; week = Tue; printf("%d\n", week); return 0; } * 자바를 먼저 배워서 생각하는 개념이 맞..
Reference - C언어 코딩도장 0. 공용체 주로 임베디드 시스템, 커널 모드 디바이스 드라이버 등에 사용한다. 1. 구조체와 공용체 구조체는 멤버들이 각각 공간을 차지한다. 반면에 공용체는 멤버 중에서 가장 큰 자료형의 공간을 공유한다. 구조체의 크기는 모든 멤버들의 크기를 합산한 값인데, 공용체는 멤버 중에서 가장 큰 자료형의 공간을 리턴한다. 2. 공용체의 크기 아래 코드에서 sizeof(box)는 가장 큰 자료형인 char c[8]의 크기를 리턴한다. #define _CRT_SECURE_NO_WARNINGS #include #include union Box { short a; float b; char c[8]; }; int main() { union Box box; printf("%d\n",..
Reference - C언어 코딩도장 1. 구조체 기본 형태 C 언어는 클래스가 없다. 이 역할을 구조체가 하는 듯 하다. struct Person { char name[20]; int age; char address[100]; }; 2. 구조체 예제 1). 멤버를 직접 정의하기 #define _CRT_SECURE_NO_WARNINGS #include #include struct Person { char name[20]; // 구조체 멤버1 int age; // 구조체 멤버2 char address[100]; // 구조체 멤버3 };// 구조체 정의 뒤에 변수를 붙이면 선언까지 한번에 할 수 있다. int main() { struct Person p1; // 구조체 변수 선언 strcpy(p1.name,..