본문 바로가기

IT112

출력에 색깔 입히기 정리 및 결과, ansi color 출력에 색깔 입히기 정리 및 결과 일전 C언어 색깔 입히기 포스팅에 이어 일부가 아닌 전체적인 ansi color 코드와 출력을 알아보고자 한다. https://muabow.tistory.com/173 [C/C++] C언어 출력에 색깔 입히기 예제 C언어 출력에 색깔 입히기 - print color, ANSI color, 설명, 예제 C 언어로 개발을 하다 보면 출력이나 로그에 색깔을 써야 할 때가 있는데 간단하게 정의해 놓고 사용한다. 샘플 코드는 표와 같이 사 muabow.tistory.com 위 포스팅의 코드 확장이라고 봐주면 된다. 스크립트 ansi.sh 내용 ansi color는 shell 뿐만 아니라 C/C++ 및 리눅스의 모든 출력에서 사용이 가능하다. 아래 스크립트 내용과 밑에 결과 화면 .. 2022. 1. 17.
Server OS 동향 변화 Server OS 동향 변화 [2000-2015] 한번 잃은 감은 돌아오지 않는다는걸 여실하게 느꼈다. 지금 다시보니까 내가 이런걸 썼다고? 싶다. 15년 이후로 이런 자료를 만들 일이 없어서.. 정확히는 기획이나 트렌드 분석하는 업무랑 좀 멀어지다보니 확실히 세상이 어떻게 돌아가는지 감이 떨어진다. 개발만 죽어라해서 건강이 죽기 직전까지 간거 말곤 근 5~6년은 기억에 남는게 없다. 가끔씩 시간내서 업계 동향이나 트렌드 분석을 해봐야겠다. 끝. 2022. 1. 17.
[C/C++] C++ JSON parser example, C언어 JSON 파서 예제, rapidjson C++ JSON parser example 본 json_parser 라이브러리는 rapidjson을 활용한 wrapper이다. 이미 그 자체로 훌륭한 JSON parser 인 rapidjson은 소스코드가 아닌 헤더로만 구성되어있고 사용자의 역량에 따라 코드 표현이 천차만별이라 같은 선언, 같은 메서드, 같은 출력을 보장하기 위해(공용화) wrapper class를 만들게 되었다. * rapidjson 홈페이지, tutorial이 무척 잘되어있다. https://rapidjson.org/ RapidJSON: Main Page A fast JSON parser/generator for C++ with both SAX/DOM style API Tencent is pleased to support the op.. 2022. 1. 17.
Rest API 요청 언어별 정리, CURL/PHP/PYTHON/C/C++/QT/JAVA/Node.js Rest API 요청 언어별 정리 Rest API 호출 방식 소스코드를 각 언어 별로 정리해보았다. 무엇을 좋아할지 몰라 잔뜩 준비 했으니 쓸모가 있었으면 좋겠다. 준비한 언어 목록은 다음과 같다. - 목록 - 1. CURL 2. PHP 3. PYTHON 4. C/C++ 5. QT 6. JAVA 7. Node.js # 소스코드 - 각각의 요청은 http://httpbin.org/get 를 대상으로한다. - GET method 한정하여 작성. 코드 내 POST로 변경할 수 있는 요소들이 있으니 필요하면 수정해서 사용할 것. - 모든 request의 response 응 동일하기 때문에 가장 아래에 응답 결과로 정리한다. 1. CURL - OS: Ubuntu 16.04.7 LTS, Version: curl 7.. 2022. 1. 17.
linux coredump, core 파일 생성 방법, ulimit linux coredump, core 파일 생성 방법 리눅스 상에서 프로그래밍 작업 시 core 파일이 필요한 순간이 있다. C/C++ 프로그램 실행 중 segmentation fault 발생 시 core 파일을 만들어 디버그 작업을 해야 한다던가.. ulimit 명령어는 시스템 정보(pipe, memory, file size, core size, stack size, descriptor open 개수 등)를 보여주고 설정할 수 있는 명령어이다. 그럼 ulimit -a를 통해 시스템 정보를 살펴보자. muabow@muabow:~$ ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (.. 2022. 1. 16.
[C/C++] C언어 MAC 주소 읽기 구현, get mac address C언어 MAC 주소 읽기 구현 MAC 주소를 얻는 소스 코드를 구현한다. 네트워크 관련 처리를 하다보면 MAC 주소가 필요한 경우가 자주 발생한다. 이 역시 shell 명령을 통해 MAC 주소를 얻는거보다 소스코드로 구현하는게 깔끔하고 빠르다. 소스코드 이 역시 C언어로 변경하여 사용할 수 있다. 단지 return type을 string으로 받고 싶어 cpp로 했을 뿐. C언어 타입으로 변경하려면 cpp 요소만 제거하여 사용하자. * 이더넷 인터페이스가 많은 경우 count_if 항목에서 req->ifr_name 의 인터페이스명을 보고 판단하여 mac 주소를 획득하면 된다. 물론 한번에 다 얻을 수 도 있으니 활용하자. #include #include #include #include #include #i.. 2022. 1. 16.
linux aplay PCM 파일 재생 예제 linux aplay PCM 파일 재생 예제 ALSA 에서 기본으로 제공되는 aplay 명령어를 이용하여 PCM파일을 재생해보자. 아래 예제를 살펴보면 알 수 있지만 대상을 어떻게 재생할지 ALSA parameter를 설정하는 과정과 같다. 즉 재생할 대상 파일이 어떻게 구성되어있든 상관 없이 설정한 옵션으로 동작하기 때문에 대상의 오디오 정보를 정확히 모른다면 당연하게도 소리가 원하는 대로 나오지 않을 것이다. 예제와 설명 -t raw : 타입이 raw, 즉 PCM 파일을 재생하겠단 의미한다. -c 2 : 2채널로 재생한다. 2채널은 Stereo 타입을 의미한다. -r 48000 : 샘플링레이트(sample rate)를 48Khz로 재생한다. -f S16_LE : Signed 16bits Little .. 2022. 1. 15.
IT 관련 용어 정리 #1 / MDM, UART, GPIO 등 IT 관련 용어 정리 #1 MDM, UART, GPIO, WOL, PMS, IMS, PC, LDAP MDM Mobile Device Management - 스마트폰, 태블릿, 노트북 등 단말 장치의 보호와 관리, 감시, 원격 지원을 제공 및 통합 관리하는 시스템을 의미한다. - 사업장 입장 시 카메라 기능 강제 OFF, 통신 기능 OFF, 퇴장 시 기능 원복, 근태관리를 위한 위치 추적등이 MDM 기능에 속한다. UART Universal Asynchronous Receiver / Transmitter - 범용 비동기 송/수신기는 병렬 데이터의 형태를 직렬 방식으로 전환하여 데이터를 전송하는 하드웨어이다. - RS-232, RS-422, RS-485 를 UART라고 한다. GPIO General Purp.. 2022. 1. 15.