목록Programing/C, C++ (32)
공부중
std::sort를 사용해서 정렬을 해보고 있었는데 아래와 같은 스크린샷이 나오면서 invalid comparator라는 메시지를 던지고 죽어버렸다. 무엇인지 살펴보자. 첫번째의 MessageBox에서 다시 시도를 눌러보니 두번째 스크린샷의 지점을 가리키고 있었다. // test if _Pred(_Left, _Right) and _Pred is strict weak ordering, when the arguments are the cv-same-type 친절하게도 주석에 위와같이 적혀있었다. 번역하자면 // 인수가 cv-same-type일 때 _Pred(_Left, _Right) 및 _Pred가 엄격한 약한 순서인지 테스트합니다. 이 엄격한 약한 순서(strict weak ordering)인지 테스트한다..
일단 상황은 이렇다. ConsoleApplicationUAC는 권한상승을 필요로 하는 프로그램이고 UACProgramCall은 위의 ConsoleApplicationUAC를 CreateProcess를 통해서 실행하는 프로그램이다. ConsoleApplicationUAC는 실행하면 권한 상승 요청을 묻고 승인한 뒤에 실행이 가능하다. 특별한것은 없고 이 출력문 하나 하고 끝난다. 이제 저 프로그램을 CreateProcess를 통해서 실행해보자. 코드는 아래와 같다. #include #include int main() { std::cout
제목을 뭐라고 지을까 하다가 좋은 이야기가 떠오르지 않아서 이렇게 써보았다. 오늘 많은? 일들이 있었지만 특히 생각나는게.. 내가 겪었던 문제와 100% 일치하지는 않지만(완전 똑같지는) 결국에는 그 짧은 당시에는 이 방법이 떠오르지 않아서? 안떠오르면 모르는게 맞지... ㅠ 일단 써보려고 한다. unsigned int value = 0xFF55AA00; char foo[4]; 일단 unsigned int형인 value의 값을 char 배열에 모두 넣고싶었다. unsigned int value = 0xFF55AA00; char foo[4]; foo[0] = value; 그때 무슨 정신머리였는지 나는 위와같은 코드를 짜버렸고... 후.... 당연히 foo[1] foo[2] foo[3]에 값은 들어가 있지 ..
상황은 이러하다... 아래와 같이 분명히 클래스의 생성자와 소멸자를 public에도 넣었는데 링크에러가 나면서 확인할수 없다는 내용이였다. 위의 내용 보고 아니 속이 뒤집어 지는줄 알았다 버그인가 아니면 내가 나도 모르는 무언가가 존재하는건가 했는데 정답은 의외로 간단하였다.. 프로젝트에 저 h와 cpp 파일이 포함되지 않았다. git을 이용해서 작업하다보면 실수로 저렇게 빠지는 경우가 있는데 이런문제를 발생할줄은...
요 며칠전 프로그램을 짜다가 한글 출력이 안되는걸 보고 왜 안되지?? 고민을하고 삽질을 하다가 결국 해결을하고나서 여기에 글을 남겨봅니다. 결론은 locale 설정을 해주어야 하는데 locale 관련 MSDN만 보고 싶다면 아래 링크를 참조하면 될것같다. docs.microsoft.com/ko-kr/cpp/c-runtime-library/reference/setlocale-wsetlocale?view=msvc-160 setlocale, _wsetlocale CRT (Microsoft C 런타임) 라이브러리 함수 및에 대해 설명 합니다 setlocale _wsetlocale . docs.microsoft.com docs.microsoft.com/ko-kr/cpp/standard-library/locale-..
아마 디버깅중 내 코드만 보기 옵션이 VisualStudio 2015인가 17쯤에 추가된거 같긴한데 편한 기능이지만.. 가끔 외부 코드를 보고싶을 때(?)가 있긴한데 이것에대한 글을 적으려고 한다. 내 블로그 글 보다 MSDN글을 보고 싶으면 아래의 링크를 따라가면 된다. https://docs.microsoft.com/ko-kr/visualstudio/debugger/just-my-code?view=vs-2019 내 코드만을 사용하여 사용자 코드 디버그 - Visual Studio 내 코드만은 사용자 코드가 아닌 코드 호출을 자동으로 건너뛰는 디버깅 기능입니다. 이 기능을 사용하거나 사용하지 않도록 설정하는 방법 및 사용하는 방법을 알아봅니다. docs.microsoft.com 디버깅을 하다가 호출스택..
2017.07.07 - [Programing/C, C++] - [C/C++] 구조체의 크기에 관해서.. [C/C++] 구조체의 크기에 관해서.. 퇴사후 휴식을 하고 잊어버린 C++을 ... 다시 공부하려고 하는데(진짜 다 잊어버려서 내가 당황스럽다..) 허리가 너무 아파서 겨우겨우 허리 잡으며 하나하나 정리라도 하면서 잊어버린거 혹은 그 hannom.tistory.com 과거에 정리했던거지만 좀 더 정리를 해보려고 한다. 구조체의 크기는 멤버중에서 가잔 큰 크기의 멤버 자료형을 기준으로 계산할 수 있다. 아래의 코드를 보면서 살펴보면... struct sizeTest1 { int a; short b; char ch; int c; }; struct sizeTest2 { int a; short b; int ..