C++/C++ 기타

C++/C++ 기타

C++ 에서 문자열(String)을 숫자로 변환하는 법

이번 글을 통해 배워갈 내용 C++에서 문자열을 숫자로 변하는 두 가지 방법 방법 1 std::stoi(), std::stof(), std::stod()를 활용해서 문자열을 정수, float 혹은 double로 변환 #include #include int main() { int i; float f; double d; std::string str = "123"; try { // string -> integer int i = std::stoi(str); std::cout

C++/C++ 기타

visual studio 2019에서 줄맞춤 단축키, 줄정렬 단축키

이번 글을 통해 배워갈 내용 visual studio 2019에서 줄 맞춤 단축키 쓰는 법 visual studio 2019 에서 줄 정렬 단축키 쓰는 법 먼저 사전순으로 줄 정렬입니다. 사전 순으로 정렬하고자 하는 영역을 선택하고 Shift + Alt + L를 누르신 다음 Shift + Alt + S 를 눌러 주시면 위와 같이 사전순으로 정렬됩니다. 줄 맞춤의 경우 영역을 선택하고 Crtl + K을 누르고 Crtl + F을 누르면 됩니다. 오늘도 즐거운 코딩 하시길 바랍니다 ~ :) https://codemasterkimc.tistory.com/35 C++ 이론을 배울수 있는 곳 정리 개요 C++을 배우는 책, 강의, 블로그, 링크 등을 공유합니다. (링크 및 간략한 설명을 하였으나 만약 원작자가 링크..

C++/C++ 기타

C++에서 Floating 값을 0과 비교하는 방법

이번 글을 통해 배워갈 내용 C++에서 double/float 타입 (== 비교 혹은!= 비교)를 하는 법을 알아보겠습니다. float 나 double 타입을 0에다 일치 비교 연산을 하실 때 아래와 같이 쓰고 계신다면 일치한다라고 출력은 되지만 const float kMyFloatNum = 0.0F; if(kMyFloatNum == 0) { std::cout

C++/C++ 기타

C++에서 new 없이 동적으로 2D 배열을 사용하는 방법에 대한 고찰

이번 글을 통해 배워갈 내용 2중배열을 동적으로 사용하기 프로그램 실행중에 동적으로 메모리 할당을 하는 경우 프로그램의 스택 메모리에서 할당되는게 아니고 힙에서 메모리할당을 하게 되는데 new 라는 키워드를 통해서 운영체제에 메모리를 요청하게 된다. 문제는 이러한 요청해서 받은 메모리는 관리를 해주지 못하는 경우 메모리 누수가 발생한다. 예를 들자면 2중 배열을 동적으로 선언한 다음 const int row = 3; const int col = 3; int** myArr = new int* [row]; for (int i = 0; i < row; i++) { myArr[i] = new int[col]; } 계속 반복해서 호출하면 처리되지 않은 예외 발생(0x7656B512, Project3.exe): M..

C++/C++ 기타

C++ 타입캐스팅에 대한 생각과 팁

이번 글을 통해 배워갈 내용 타입캐스팅의 정의 타입캐스팅의 종류 필자가 선호하는 방식 긴글을 압축해서 최대한 짧고 이해하기 쉽게 작성하려 노력해 봤습니다. 정의 타입캐스팅이란 말그대로 Type(형)을 Casting(조형) 하는것입니다. 쉽게 풀면 형태를 바꿔주는 것이며 프로그래밍에서는 변수의 타입을 다른 타입으로 바꿔주는 것을 의미합니다. 종류 C++ 에서는 묵시적, 명시적 그리고 Cast 연산자로 형변환을 합니다. 묵시적으로 변환은 아래와 같이 #include using namespace std; int main() { char myChar = 'a'; cout

C++/C++ 기타

C++에서 string을 int, uint혹은 long으로 변경하기

이번 글을 통해 배워갈 내용 스트링을 숫자로 변경해보겠습니다. 스트링을 int로 변경할때는 atoi 함수를 씁니다. 이때 주의 하실것은 1. 숫자의 자료형이 int인지 확인 2. 오버플로우 int의 경우 최대값 2147483647 을 초과하는지 확인 입니다. long이나 UINT의 경우 저는 atoi 대신에 stoul(string to unsigned long)을 많이 씁니다. stoul 의 인자 값은 다음과 같습니다. str - 변환할 문자열 pos - 처리된 문자 수를 저장할 정수 주소 base - 숫자 자릿수입니다. 추가 설명은 아래 링크를 참조하시면 됩니다(영문) https://en.cppreference.com/w/cpp/string/basic_string/stoul std::stoul, std..

C++/C++ 기타

C++에서 new로 동적 메모리 할당 후 null값 체크를 해야 할까요?

이번 글을 통해 배워갈 내용 C++ 에서 new 선언 후에 nullptr 체크를 해줘야 하는지 여부 실무에서 작업을 하다보면 new 로 메모리 할당 후에 nullptr 체킹을 하는 프로그래머들을 가끔 봅니다. c++에서 동적으로 메모리를 할당 하는 new 연산자는 많은 분들이 씁니다만 new 연산자를 사용하고 바로 다음에 nullptr 체크를 하는게 과연 올바른 방법일까요? 예시를 보여드리겠습니다. #include using namespace std; int main() { int* pMyInt = new int; if(pMyInt == nullptr) { cout

C++/C++ 기타

C++ 열거형의 간단한 정의와 예시

이번 글을 통해 배워갈 내용 열거형의 정의 열거형 샘플 열거형의 정의 열거형이란 enumerator(열거자)로 정의된 정수 상수 집합으로 구성된 사용자 정의 형식입니다. 간단하게 이야기 하자면 상수에 이름을 붙여서 쓰기 편하게 해주며 열거형을 활용해 특정한 집합 예를들어 색상이나 점심 메뉴 등을 코드로 표현 할때 읽기가 매우 좋아지면서 관리하기도 편합니다~! enum class Breakfast { Bacon, Toast, Cereal, Kimbob };​ 위와 같이 선언 가능하며 저의 경우 아래와 같이 맵과 같이 묶어서 유용하게 사용하고 있습니다. #include #include using namespace std; enum class Breakfast { Bacon, Toast, Cereal, Kim..

kimc
'C++/C++ 기타' 카테고리의 글 목록