마법설명부분은 주석 제거하면 된다. 저 부분은 파택2에만 포함되어 있는 부분이다.iconv가 아주 지랄같다.bash에서 head -c 20 |iconv -f euc-kr -t 하면 아주 잘 된다.그런데 glib에 있는 iconv를 불러서 사용하면 이 지랄이 난다.뭔가 16bit나 32bit computer문제에 little, big-endian 문제가 섞인거 같기는 한데...어디에서 생긴 문제인지를 모르겠다.뭐 어쩌겠는가... 안 되면 어쩔 수 없는거지...ps:헥스에디터로 자기 속성에 맞는 브레스 마법을 모든 캐릭에게 얹어주니 게임이 아주빨리 진행되고 재미 있다./*!
* \file a.c * \brief * * <+DETAILED+> * * \author KIM Hyeok (kh), ekh0324@gmail.com * * \internal * Created: 2019년 03월 18일 * Revision: none * Compiler: gcc * Organization: Konkuk University * Copyright: Copyright (c) 2019, KIM Hyeok * * This source code is released for free distribution under the terms of the * GNU General Public License as published by the Free Software Foundation. */ #include#include #include #include #include #include extern int errno; int main() { /* iconv_t ic = iconv_open("UTF-8", "CP949"); */ /* iconv_t ic = iconv_open("CP949", "UTF-8"); */ // iconv_t ic = iconv_open("UTF8//IGNORE", "CP949"); iconv_t ic = iconv_open("UTF-8", "CP949"); // iconv_t ic = iconv_open("UTF-8//TRANSLIT//IGNORE", "CP949//TRANSLIT//IGNORE"); // iconv_t ic2 = iconv_open("utf-8", "cp949"); if (ic == (iconv_t)(-1)) { perror("iconv_open"); return 1; } char buf[1000]; FILE * input = fopen("magic1.dat", "r"); char* strings = malloc(1000); short level, mana, firewater, windearth, lightdark; short min, max; char* filename= malloc(25); short sound, targettype, magictype,charactertype; char* description = malloc(21); char* outbuf= malloc(1000); char* inbuf = malloc(100); size_t insize,outsize; size_t result; // fread(inbuf, 1, 108, input); while(!feof(input)) { memset(inbuf, 0x00,100); insize = 20; outsize = 400; memset(inbuf, 0x00,insize); memset(strings, 0x00,1000); memset(outbuf, 0x00,1000); fread( inbuf, 1,insize, input); insize = strlen(inbuf); result = iconv(ic, &inbuf, &insize,& outbuf, &outsize); if (result < 0) { int err = errno; strerror_r(errno, buf, sizeof(buf) ); printf("result : %ld, errno : %d(%s)\n", result, errno,buf); return(-1); } else { fprintf(stderr, "[%s][(%ld)\n",outbuf, outsize); } memcpy(strings,outbuf, 300 ); memset(strings+300, 0x00, 10);; fread( &level, 2,1, input); fread( &mana, 2,1, input); fread( &firewater, 2,1, input); fread( &windearth, 2,1, input); fread( &lightdark, 2,1, input); fread( &min, 2,1, input); fread( &max, 2,1, input); insize = 12; fread( filename, 1,insize, input); filename[24] = '\0'; fread( &sound, 2,1, input); fread( &targettype, 2,1, input); fread( &magictype, 2,1, input); fread( &charactertype, 2,1, input); outsize = insize = 12; /* fread( inbuf, 1,insize, input); * iconv(ic, &inbuf, &insize, &description, &outsize); * description[20] = '\0'; */ printf("name:%s\n", strings); printf("배우는 레벨은 %d\n", level); printf("사용하는 마나는 %d\n", mana); if ( firewater>0 ) { printf("불마법 (+%d)\n", firewater); }else if (firewater <0 -firewater="" d="" if="" n="" printf="" windearth="">0 ) { printf("대기마법 (+%d)\n", windearth); }else if (windearth <0 -windearth="" d="" if="" lightdark="" n="" printf="">0 ) { printf("빛마법 (+%d)\n", lightdark); }else if (lightdark <0 -lightdark="" :="" d="" description="" filename="" max="" min="" n="" printf="" puts="" s="" span="">0>0>0>
이 블로그 검색
2019년 3월 19일 화요일
iconv 때문에 망했다. 해결가능하신분이 있다면 답변좀,< 파랜드 택틱스 마법 파싱 프로그램이다. >
피드 구독하기:
댓글 (Atom)
태그
- 1호차
- 3D
- 3g
- 간호사
- 결혼
- 공익근무
- 광고차단
- 국민의당
- 군대
- 그리드엔진
- 김현정의 뉴스쇼
- 날씨
- 당번병
- 댓글삭제
- 더민주
- 더불어민주당
- 데몬
- 도커
- 라이브리
- 러블리즈
- 무한재부팅
- 민주당
- 바람
- 베링거
- 베링어
- 병역
- 병역거부
- 보건
- 삼성
- 소나기
- 소셜댓글
- 슈퍼컴퓨터
- 신천지
- 썰
- 악보
- 압축
- 애드
- 애드블록
- 양호
- 에드
- 에드블록
- 역선택
- 연구실
- 오디 오인터페이스
- 오픈뱅크
- 왜곡
- 왜곡기사
- 외도
- 원클릭구매
- 유틸리티
- 이번주아내가바람을핍니다
- 인터넷언론
- 자막
- 적성 카페 빵집
- 전해철
- 정치
- 조선비즈
- 조선일보
- 조선biz
- 조형기
- 진상훈기자
- 차떼기
- 카카오
- 카카오스토리
- 컴퓨터
- 코로나
- 쿠키
- 크롬
- 클러스터
- 테스크스풀러
- 학교보건법
- 한탄
- 헌법재판소
- 헌재
- adapter
- aes
- Amazon
- Ardour
- Audio
- audio interface
- banking
- Behringer
- bundle
- bz2
- bzip2
- compositon
- coreOS
- curl
- daemon
- DAW
- dbus
- docker
- ethernet
- fedora
- g4
- gram
- gridengine
- gunzip
- gz
- gzip
- gzip2
- Heroes of Might and Magic3
- HOMM3
- HOTA
- interface
- iptime
- jack audio connection kit
- jackd
- jtbc드라마
- kdenlive
- ladspa
- LG
- lilypond
- linux
- LiveRe
- lmms
- lower
- LTC
- lte
- lv2
- lzma
- midi
- MOD
- modem
- MTC
- natron
- neobundle
- nvim
- one click
- Oneman Band
- OnTheGo
- open
- OTG
- pbzip2
- pigz
- plugin
- psk
- python
- qdbus
- quick-scope
- rsync
- scp
- sftp
- sge
- sim
- spool
- ssh
- tar
- task
- task-spooler
- terminal
- third
- ts
- tsp
- ubuntu
- UMC
- UMC202HD
- usb
- vfx
- video
- vim
- vim8
- VR
- vundle
- wifi
- WOG
- wpa
- wttr.in
- xz
가장 많이 본 글
-
리눅스에서 디스플레이 해상도 등과 관련된 패키지는 xrandr이다. xrandr을 통해 다양한 display mode를 체험할 수 있다. 지금 현재 사용하고 있는, 모니터는 DELL 2312HM으로 홈페이지상 스펙으로는 1920x1080 6...
-
과정 1. 열풍기로 후면 커버 한쪽을 가열한다. 권장 100도 30초. 2. 공기압 고정장치(?:화장실 벽 등에 고정시키는데 쓰는)로 후면커버에 고정시킨 후 들면, 후면커버에 부착된 점착제가 늘어나면서 공간이 생김. 그곳을 기반으로 벌리면서, 열풍기...
-
https://sca.coffee/sca-news/25/issue-13/towards-a-new-brewing-chart 원본은 위 주소로가서 보세요. 인터넷에 검색하면, 핸드드립에 물을 얼마나 써야하나요라고 검색하면, 다음과 같은 차트를 많이 만납...
댓글 없음:
댓글 쓰기