본문 바로가기
728x90

분류 전체보기525

c-json lib 설치 및 makefile 리눅스c에서 json을 사용하기 위해서 라이브러리를 설치했다. --->라이브러리를 쓸려하니 완성된 json 형태가 아니면 쓰기가 어렵다. ​ yum install json-c-devel ​ 설치 완료 후 Makefile ---> -ljson-c 를 추가해줘야한다. 소스코드에는 헤더파일인 #include 추가 CC=gcc TARGET=a.out INCLUDE = -I/changjo/changjo.h LIB = -lcurl -ljson-c OBJECT=main.o $(TARGET) : $(OBJECT) $(CC) -o $(TARGET) main.o $(INCLUDE) $(LIB) main.o : main.c $(CC) -c -o main.o main.c $(INCLUDE) clean: rm $(OBJECT).. 2023. 1. 8.
코스콤 koscom api 관련 문서와 링크 https://developers.koscom.co.kr/resources/documentation/RESTAPIGuide.pdf ​ https://developers.koscom.co.kr/apiresources 2023. 1. 8.
curl 한글깨짐현상 + MemoryStruct(feat. koscom api) 코스콤 koscom api 를 사용하여 주식데이터를 내려받아 fwrite를 했더니 한글이 깨졌다. 이것을 해결하기 위해서 memorystruct을 도입했다. ​ (사실 locale.h로 시도하다가 삽질) ​ /usr/share/doc/libcurl-devel-7.29.0/getinmemory.c 에 있는 샘플코드를 이용하였고 추가한부분은 url과 FILE 관련 부분이다. #include "changjo.h" struct MemoryStruct { char *memory; size_t size; }; static size_t WriteMemoryCallback(void *contents, size_t size, size_t nmemb, void *userp) { size_t realsize = size *.. 2023. 1. 8.
#include<curl/curl.h> 를 못 찾을 때 그냥 쉘에서는 curl이 사용이 되는데 코딩을 할려고하니 헤더파일을 못 찾는다. ​ yum install curl-devel ​ 로 설치하자 ​ ​ 설치하고 실행해보자 #include #include int main() { CURL *curl; CURLcode res; curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "http://google.com"); /* Perform the request, res will get the return code */ res = curl_easy_perform(curl); /* Check for errors */ if(res != CURLE_OK) fprintf(stderr, "curl_e.. 2023. 1. 8.
c(서버)와 java(클라이언트) socket 통신 간단 예제 서버는 TCPIP로 구현이 되어있고 거기에 붙어서 테스트해보기 위한 client모듈을 만들었다. 제일 고생한 것은, 서버로부터 받은 recieve데이터를 read할 때 고생했다. 데이터를 보낼때 정상적으로 보낸다음 또한번 newLine()으로 보냈기 때문에 받은 값은 null이였다. 데이터는 전부 char byte으로 내려 받는다. ​ spring legacy project에 있는 homecontroller에 수정해서 만든 소스이다. @Controller public class HomeController { private static final Logger logger = LoggerFactory.getLogger(HomeController.class); /** * Simply selects the ho.. 2023. 1. 8.
자바(java)와 spring 설치 가이드 링크(링크 순서대로 깔면됩니다) jdk설치(8버전으로 다운하길..) https://d2fault.github.io/2018/07/11/20180711-install-jdk-at-windows10/ ​ spring4 다운 https://freestrokes.tistory.com/78 ​ legacy project가 없기때문에 추가 설치 http://ppusari.iptime.org:11080/2019/04/06/sts-4%EC%97%90%EC%84%9C-spring-legacy-project-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0/ ​ 톰켓설치 및 서버 설정 https://all-record.tistory.com/46 https://all-record.tistory.com/156 ​ home.jsp 이해하기 h.. 2023. 1. 8.
pypy3 설치하는 방법 Pypy3 설치하는 방법 1. Pypy를 깔고나서 pypy3를 깔았기 때문에 pypy3부터 깔아도 잘되는지 모른다. 그래서 pypy 까는 법부터 시작한다 2. Pypy --version으로 깔려있는지 확인 3. http://egloos.zum.com/mcchae/v/11233143 4. sudo apt-get install pypy pypy-dev(sudo yum install pypy pypy-dev) curl -O https://bootstrap.pypa.io/get-pip.py sudo pypy get-pip.py pypy -m pip list 링크에 있는 글 5. pypy 설치완료 6. pypy3 설치방법 7. https://m.blog.naver.com/PostView.nhn?blogId=sto.. 2023. 1. 8.
vim color 편집하기 root 계정에서 sudo yum install vim 색 syntax on // syntax highlight를 켬 set hlsearch // 검색된 문자열을 표시 (색 변경) set encoding=utf8 // 인코딩을 utf8로 설정 ​ highlight Comment term=bold cterm=bold ctermfg=6 2023. 1. 8.
파이썬(python) 크롤링(crawling) 간단 예제(코로나 확진자수 확인) from urllib.request import urlopen from bs4 import BeautifulSoup html = urlopen("http://ncov.mohw.go.kr/bdBoardList_Real.do?brdId=1&brdGubun=11&ncvContSeq=&contSeq=&board_id=&gubun=") bsObject = BeautifulSoup(html, "html.parser") #print(bsObject) table = bsObject.find('table', {'class':'num'}) trs = table.find_all('tr') for idx, tr in enumerate(trs): if idx >= 0: tds = tr.find_all('td') ths = tr.. 2023. 1. 8.
c언어 함수포인터(fp) function pointer 간단 예제 생소한 문법으로 적혀있는 코드를 보고 무엇인지 따라 추적하다가 void (*함수포인터)()라는 것을 알았다. 간단한 테스팅 소스코드를 작성해보았고 밑에 예시는 '실전'이다. #include int add(int a, int b) { return a+b; } int mul(int a, int b) { return a*b; } int main() { int (*fp)(int, int); fp = add; printf("%d\n", fp(10,20)); // 30 출력 fp = mul; printf("%d\n", fp(10,20)); // 120 출력 } a.out https://dojang.io/mod/page/view.php?id=601 #define MAX_TR 100 typedef int (*TrFun.. 2023. 1. 8.
728x90