반응형

분류 전체보기 764

[C언어/C++] Namespace이란? 사용 목적, 예제로 이해하기

목차 [C언어/C++] Namespace이란? 사용 목적 C++에서 namespace(네임스페이스)는 코드의 모듈화와 이름 충돌을 방지하기 위한 기능을 제공하는 논리적인 컨테이너입니다. 네임스페이스는 식별자(클래스, 함수, 변수 등)들을 논리적으로 그룹화하여 다른 네임스페이스에 정의된 식별자와의 이름 충돌을 피할 수 있도록 도와줍니다. 이를 통해 코드의 가독성을 향상시키고 유지보수를 용이하게 만들어 줍니다. 그냥 간단하게 설명하면 A반과 B반에 각 각에 철수라는 학생이 있으면 우리는 A, B라는 namespace가 있기 때문에 각 반의 철수를 불러낼 수 있게 되는 것입니다. Namespace를 사용하는 이유는 다음과 같습니다. 이름 충돌 방지: 프로젝트에서 여러 라이브러리나 모듈을 사용할 때, 각각의 라..

[제품 리뷰]샤오미 비오미 S9 로봇 무선 청소기(Xiaomi Viomi, 물걸레)

목차 샤오미 비오미 S9 로봇 무선 청소기(Xiaomi Viomi) 장단점 샤오미 로봇 청소기는 새로운 버전이 나올때마다 기능이 타사에 비해 업그레이드 되어서 로봇 청소기에 한해서는 타사에 비해 장점이 많습니다. 비오미는 기본적으로 진공 청소를 제공하고 추가적으로 물걸레 작업까지 가능 합니다. 장점 1. 다기능: 이 무선청소기는 빨아들이고, 닦고, 소독하는 기능을 한 번에 수행할 수 있습니다. 또한 자동으로 먼지통을 비워줌으로써 사용자의 편의를 증대시켜 줍니다. 2. 디자인과 마감: 매트한 흰색 플라스틱으로 만들어진 이전 세대의 로봇청소기와는 달리, S9 UV는 탁월한 디자인과 마감으로 사용자들을 놀라게 합니다. 검정과 파란색의 조합이 시선을 사로잡으며, 프리미엄한 느낌을 줍니다. 3. 탁월한 네비게이션..

[C언어/C++]#pragma once 사용 목적, 예제로 쉽게 알아보기(이유,샾)

목차 [C언어/C++]#pragma once 사용 목적 #pragma once는 C++에서 헤더 파일의 중복 포함을 방지하는 데 사용되는 전처리기 지시문입니다. 결론적으로 헤더가 중복적으로 포함되었을 경우 C 프로그램이 Linking 작업 중에 오류를 일으키기 때문에 중복 되는 경우 알아서 중복을 제거해달라는 뜻입니다. 이를 사용하는 이유는 다음과 같이 설명할 수 있습니다: 1. 효율성: #pragma once를 사용하면 컴파일러가 헤더 파일을 한 번만 포함하도록 보장합니다. 따라서 이미 포함된 헤더 파일은 다시 처리하지 않아도 됩니다. 이는 빌드 시간을 단축시키고 컴파일 속도를 향상시킵니다. 2. 가독성: #pragma once는 전통적인 include guards보다 간단하고 가독성이 좋습니다. In..

[C++]헤더파일 사용 예제로 이해하기(Header file)

목차 [C++]헤더파일 사용 목적 C언어에서 header file을 사용하는 목적은 아래와 같습니다. 1. 함수 선언과 재사용성 헤더 파일에 함수의 선언을 작성하면, 다른 소스 파일들에서 해당 함수를 사용할 수 있습니다. 함수의 선언은 함수의 이름, 매개변수, 반환형 등을 정의하는데, 함수의 내용은 정의되지 않으며 해당 함수가 어떻게 동작하는지에 대한 정보를 포함하지 않습니다. 이렇게 선언과 정의를 분리함으로써 함수를 여러 곳에서 재사용할 수 있습니다. 2. 모듈화와 가독성 코드를 기능 단위로 나누어 헤더 파일과 소스 파일로 구분하면, 코드가 모듈화됩니다. 이렇게 하면 프로그램의 특정 부분을 더 쉽게 이해하고 수정할 수 있습니다. 또한, 소스 파일의 크기가 커지는 것을 방지하며 코드의 가독성을 향상시킵니..

[C언어]정수자료형, 실수 자료형 크기, 범위 출력방법, 예제 코드로 크기 출력(Byte, Size, Range, printf)

목차 [C Programming]정수자료형, 실수 자료형 크기, 범위 출력방법 C언어에서 메모리를 효율적으로 사용하기 위해서는 변수의 크기를 적절히 조절할 필요가 있습니다. 다음 표는 정수, 실수에 따른 자료형의 크기(Bytes)와 사이즈 정보 및 출력 방법을 테이블로 정리하였습니다. 아래 테이블은 64비트 CPU 기준 값으로 int 값은 CPU에 따라 2 또는 4바이트가 될수 있습니다. 자료형 크기 (Byte) 범위 출력방법 char 1 -128 ~ 127 또는 0 ~ 255 char c = 'A'; printf("%c\n", c); int 4 -2,147,483,648 ~ 2,147,483,647 int num = 42; printf("%d\n", num); unsigned int 4 0 ~ 4,29..

[제품리뷰]SK매직 제습기(13L, DEH-140LI10BG, Review)

목차 [제품리뷰]SK매직 스마트제습기(13L, DEH-140LI10BG) 장단점 SK매직 스마트 제습기는 다양한 기능과 편리한 사용성으로 사용자들의 제습 요구를 완벽하게 충족시켜주는 제품입니다. 아래는 이 제습기의 장단점을 소개해드리겠습니다. 장점 1. 360도 이동 가능한 바퀴: SK매직 스마트 제습기는 360도 회전 가능한 바퀴를 장착하여 이동이 용이합니다. 어떤 방향으로든 자유롭게 이동시킬 수 있어, 필요한 공간으로 손쉽게 옮길 수 있습니다. 2. 13리터 용량: 큰 제습 용량인 13리터를 갖춘 이 제습기는 습기가 많은 공간에서도 탁월한 성능을 발휘합니다. 작은 방부터 거실까지, 다양한 공간에서도 효과적으로 제습할 수 있습니다. 3. 저소음 고효율 모드: SK매직 스마트 제습기는 저소음 고효율 모드..

[C언어] Visual Studio 디버깅에서 메모리 확인 예제(Debugging, Memory)

목차 [C Program] Visual Studio 디버깅에서 메모리 확인 예제 이번에는 아래 예제를 통해 Visual Studio 2022에서 변수의 메모리 주소를 확인하는 방법에 대해 알아보겠습니다. 예제 코드>> #include int main() { int num = 10; int* ptr = # printf("num의 주소: %p\n", &num); printf("ptr이 가리키는 주소: %p\n", ptr); return 0; } 결과>> num의 주소: 0000008881F6F9F4 ptr이 가리키는 주소: 0000008881F6F9F4 이 예제에서는 num이라는 정수 변수를 선언하고, ptr이라는 포인터 변수를 선언하여 num의 주소를 가리키도록 합니다. 그리고 printf 함수를 ..

[C언어]Visual Studio 지역 변수의 스택 값 확인(Local Variable, Stack Memory)

목차 [C Programming] Visual Studio 지역 변수의 스택 값 확인 예제 제가 현재 사용하고있는 IDE는 Visual Studio 2022 Community 버전입니다. 우선 예제로 사용할 코드는 아래와 같습니다. 예제 코드>> #include void sum(int a, int b) { int result = a + b; // 지역 변수 선언 및 초기화 printf("The sum of %d and %d is %d\n", a, b, result); printf("The address of result variable: %p\n", (void*)&result); // result 변수의 주소값 출력 } int main() { int x = 5; // 지역 변수 선언 및 초기화 int y..

[C언어] 라이브러리 만들기, 읽기(dll, lib, 외부 코드, library import, 추가)

목차 [C언어] 라이브러리 dll, lib 이란? DLL과 LIB는 동적 링크 라이브러리와 정적 링크 라이브러리(Library)를 나타내는 파일 형식입니다. 아래 예제와 함께 각각의 역할과 사용법을 설명하겠습니다. DLL (Dynamic Link Library) DLL은 동적 링크 라이브러리(Dynamic Link Library)의 약자입니다. DLL은 여러 프로그램에서 공유할 수 있는 함수, 데이터, 리소스 등의 코드를 포함하는 파일입니다. 다른 프로그램에서 이러한 기능을 필요로 할 때 DLL을 로드하여 사용할 수 있습니다. DLL은 실행 파일이 로드될 때 메모리에 동적으로 링크되어 사용됩니다. LIB (Static Library) LIB는 정적 링크 라이브러리(Static Library)의 약자입니다..

반응형