반응형

전체 글 261

[SW expert] 3066 팀 정하기

어쩌다 그냥 시간을 보내던중 이런 글을 봤다.. 알고리즘은 이제 접은지 오래 됐는데.. 그냥 호기심이 들었다. 그러다 과연 D7중에 할만한게 있을까 찾아보고 했는데 심심풀이가 하나 있었던것 같다. 이게 D7인지 의문이지만.. 연습장도 필요없다 바로 풀어보자.. https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV_WwlpqAAoDFAX7 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 그냥 구현?은 아니고 생각만 간단하게 해서 풀면 된다. K값에 따라 남/여 숫자만 줄여나가면 되니.. 그리고 줄인 수마다 각 경우에서 그룹의..

[Cmake] 헤더 파일 Include 포함시키기

Cmake를 작성하여 간단한 프로그램을 짜면 보통 아래와 같이 사용할 수 있다. 간단하니 헤더파일 / 소스파일 / cmake 파일이 같은 경로에 있다고 보자. 이 간단한 것을 Visual Studio Code로 보면 아래와 같다. 이렇게 경로가 단순하게 되어 있다면 위처럼 Executabble에 간단히 헤더 파일과 소스파일을 적어서 빌드하면 된다. 그런데 헤더 파일이 많아지고 소스파일 코드에 include 경로가 복잡해지면 문제이다.... include에 헤더파일의 경로를 입력하는데 분명 어려움이 있을것이고 이로 인해 Undefined Reference.... 라고 하면서 파일이나 경로를 찾을 수 없다고 하는 순간 문제다. 물론 그럴거면 절대경로 다써서 하면 되겠지만.. 그건 좀 아니다. 그럴때 cmak..

C , C++, C# 2022.03.08

[Window] cmake 32bit 64bit 컴파일

기존에 내가 사용하는 Mingw64 g++ 컴파일러가 64bit 컴파일이다. 이것을 32bit로 해서 확인할 내용이 있어 32bit 컴파일이 필요했다. 이 경우 Linux에서 gcc-multilib 패키지를 사용해서 컴파일 할수 있는건 아는데 Windows가 문제였다. Mingw64 gcc 컴파일에 Mingw32 도 함께 있는 크로스 컴파일러가 필요하다. https://stackoverflow.com/questions/67671973/gcc-m32-not-working-on-windows-hosted-agents

빨간색 에러들 2022.03.03

[C++] 한글이 있는 파일 읽어 저장하기: Euc-kr

C++로 뭔가를 하면서 파일을 읽어오는데 파일을 읽는 텍스트 안에 한글이 있을떄 처리하는 과정이 필요했다. 이를 보면서 파일의 인코딩들을 작업하는 내용도 있었는데 그 부분은 나중에 하고 한글같은 경우는 일반적인 string으로 데이터를 처리하지 못할것이다. 한글은 보통 2바이트로 처리해야 할것이고 C++에서는 이런 데이터를 처리하기 위해 wstring 클래스를 사용해야 하고 파일을 읽을때, ifstream이 아닌 wifstream을 이용한다고 한다. 그것을 그대로 사용해보면 아래와 같다. 디버깅해서 wstring에 들어가는 값을 보니... 다 깨져있다... 이를 어떻게 처리해야 할까... 싶다 2가지 방식이 있다. wstringstream의 imbue 함수를 사용하는 방법과 locale의 global 변..

C , C++, C# 2022.02.22

[김포 아포지토스트레치] 개발자의 건강한 자세를 위한 스트레칭

필자도 나이가 들어가면서.. 또한 매일 자세를 꾸부정하게 있으면서 허리가 아프고 어깨가 쳐지는 문제가 항상 있다. 이 이상 나이가 들고 몸이 더 안좋아지면 심각해질거 같은데... 그러던중, 김포 한강신도시에 좋은 스트레칭 센터가 있다고 해서 갔다왔다. http://naver.me/F1LTxUKT 아포지토스트레치 : 네이버 방문자리뷰 2 · 블로그리뷰 6 m.place.naver.com 먼저, 들어가자마자 새로 인테리어도 했는지 깔끔하고 심플한 느낌이 인상적이다. 깔끔하고 심플한게 정말 인상적이었고 스트레칭을 위한 모든 도구들이 따로 구비가 되어있었다. 처음에 들어가면 상담실에서 상담하고 고객의 실제 상태를 정밀하게 점검해준다. 필자는 어깨 상태가 너무 안좋다는 말을 들었다... 아래는 필자가 강사님과 ..

기타 2022.02.20

visual studio invalid multibyte character sequence

파싱?에 대한 내용인지는 모르겠지만, 파싱 과정에서 인코딩이 잘못되어 byte 문자열을 읽을 수가 없는 문제가 있다. 그래서 파일의 인코딩과 관련한 내용이다. 최신의 Visual Studio는 utf-8 인코딩을 기본으로 하는데 관련하여 파일 인코딩이 cp949(Ecu-kr과 비슷한) 와 같은 것일때 문제가 발생할 수 있다. 대개 찾아보면 Visual studio에서 어떻게 설정하거나 코드에 전처리문을 넣어서 처리하는 경우가 많다. 문제는, 위처럼 처리하는게 아닌 원본의 파일을 파싱할 수 있도록 하는것이 베스트이다. 아래의 내용으로 링크 플래그로 진행한다면 문제가 없어진다. 이와 관련해 CL 컴파일러의 컴파일 옵션을 공식 문서를 통해 확인해볼 필요가 있다. /E 옵션(preprecess stdout) 등..

빨간색 에러들 2022.02.15

[C++] StackWalker64 / 스텍 추적

Visual Studio에서 _asm 키워드때문에 가져온 문제이다. 먼저, 64비트에서는 더이상 MSVC 친구가 _asm 키워드를 지원하지 않는다. 그래서 보통 _asm 코드를 새로 만들어서 Visual studio에서 링크를 새로 걸어 처리하는 방식이다. 그런데 Windows api에 _asm에 적힌 메모리 추적 관련 함수를 제공하고 있었다. 그래서 _asm 어셈블리 코드의 내용과 같은 기능을 코드로 적용하는 방식이 있다. 그와 관련해서 2가지 api가 존재한다. 이중에서 Stackwalk64가 유명한것 같다. 필자는 _AddressOfReturnAddress api로 원래의 _asm 코드와 같은 코드를 만들어서 처리했다. StackWalker64를 활용한? 스레드 및 call stack을 확인할 수 ..

C , C++, C# 2022.02.13

[Vscode] C++ 디버깅 및 단축키

vscode를 사용하면서 생산성 문제가 있어 여기다 정리를 한다 그전에 원래 CS를 잘 모르고 항상 회의감을 가지지만 1인분이라는 마인드로 여기다 기록해둔다. 먼저 Makefile 이나 CMake가 아닌경우 vscode에서는 현재 환경에 사용할 수 있는 컴파일러를 바탕으로 실행 환경과 빌드 환경을 적용할 수 있다. 물론 하나의 소스파일에 대해서 자동으로 생성해준다 아 물론 C++ Extensioon이 설치되어 있어야 한다. 명령 팔레트에서 Run Build Task 항목에서 아래와 같이 설정할 수 있다. 환경에 맞는 설정을 하면 바이너리가 떨어질 것이고 이 파일을 바탕으로 실행과 디버깅을 할 수 있다. *여러 소스파일 및 헤더파일과 라이브러리 등 복잡한 경우 settings.json에서 설정을 해야한다...

기타 2022.02.13

[Blockchain] 테스트서버에 코인만들기

뭐든 돈이 될만한 그럴듯한 것들은 시도해보는게 맞는거 같고.. 코인도 만들면 좋고 또한, 관련 영상이 즐겨보니 동영상에서 확인할 수 있었다. 이는 그 영상의 내용을 가져온 것이다. 실제 서버에 하려면..? 돈이 필요할것 같다.. (나중에 언젠가 해보자) 우선 이곳에서의 자료를 바탕으로 따라해보며 부족한 내용이 있을 수 있다. 메타마스크 지갑 생성은 따로 설명하지 않으며 테스트넷을 통해 생성하고 테스트 이더리움 코인을 만드는 작업이 선행되어야한다. 이후 아래 링크를 통해 Remix.ide 로 직접 원하는대로 작업하는데.. 잘 참고하면 좋을 것 같다. https://www.youtube.com/watch?v=t_vTQEQVCkQ&list=PLzMcBGfZo4-msMNfRJT5cLSge23P5bqUx&inde..

기타 2022.02.03
반응형