창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


LIST ALL
Posted by 지상현2004-11-23 21:24:22, Hit : 6930
창조의 한계를 뛰어 넘어서 #1: '문자' 포인터 써먹기
Homepage : http://myhome.naver.com/bc88c
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=open_lec&no=57
여러분을 노가다의 길로 이끌어줄 제가-_- 왔습니다.

예전에 제가, 창조로 파일 내려받는 예제 만들 적에-_-
가능성을 확인하곤 귀찮아서 끝내는 완성하지 못한 어떤 기술(?)에 대해 힌트 정도 드리려고 합니다. -_-

결론부터 말하면, 창조에서도 포인터를 써먹을 수 있다는 겁니다.

: "그래서 어쩌라고? -_-"

...이렇게 말씀하시는 분이 계실지도 모르겠습니다.
하지만 포인터를 사용할 수 있게 됨으로서 창조에서 할 수 있는 일(?)이 비약적으로 증가합니다. 물론 그에 따른 노가다도 상당량 증가하겠지만 -_-;

1. 기존에 포인터를 요구했던 API를 사용할 수 있습니다. + 노가다
2. DLL을 만들어 쓸 때, 데이터 전달을 좀 더 원활하게 할 수 있습니다. + 노가다
3. API나 DLL을 사용할 때, 구조체를 전달할 수 있습니다(!) + 노가다 + 생노가다 + 중노동
4. 그 밖에 여러가지...

별로 흥미 없는 일일지도 모르지만, 겨우 어떤 API를 쓰기 위해 같잖은 DLL을 만들어 창조의 자존심을 팍팍 밟히는 것을 회복해줄지도 모릅니다.-_-
다시 말해 "DLL을 노가다로 바꿀 수 있다"는 획기적인 교환 법칙이 성립..(퍽)




슬슬 본론을 말해볼까요.
API를 쓰는 방법에는 2가지가 있습니다. 그리고 그에 따라 창조에서 사용할 수 있는 방법도 2가지로 나뉩니다.

1. 포인터로 데이터를 받아, 그 데이터가 필요한 경우!
* 다른 창의 제목을 알고 싶어서, GetWindowText 를 쓰고 싶어요!
* 그저 윈도우 폴더를 알고 싶은데, 썩을놈의 GetWindowsDirectory가 포인터를 요구해요!

해결책: 문자 형 변수를 이용하세요!
포인터, 그리고 문자열에 대해 확실히 개념이 잡히고 나서...
문자 형 변수도 역시 포인터라는 생각을 했습니다. 아니나다를까, 되더군요.
사용법만 요약하면

문자: 윈도폴더;
윈도폴더 := "                              "; // 띄어쓰기 30개입니다.
API함수.GetWindowsDirectory(윈도폴더,30);
// 이렇게 하면 윈도우 폴더를 30자 까지만 알아옵니다.


결론: 문자 형 변수는 그 자체로 포인터이다!

특수한 경우!
포인터로 문자열 외에 숫자값을 전달해야 하는 경우가 있습니다.
예를 들어 '3' 을 전달하려면

문자: 포인터;
포인터 := 수문(0) + 수문(0) + 수문(0) + 수문(3);
// '포인터'의 값을 Hex로 표현하면 00 00 00 03 이 되겠죠. => 결국 숫자 3


그리고 저 포인터를 그대로 넘기시면 되는데, 이 때 API를 선언할 때 교묘하게 문자로 선언만 바꾸시면 된다는 겁니다.
하지만 이 방법은 아직 쓸 일도 별로 없고 또 엄청난 노가다를 요구하는데다가, 지면 부족으로-_- 자세히 설명하기 힘드므로 궁금하시면 나중에 자세히 설명하겠습니다.

자세한 설명은 다음회에서 -.-

2. 구조체를 전달 하거나/받거나, 그 데이터를 그대로 파일에 출력만 해도 되는 경우!
시간 관계상 다음회에 계속 -.-

위자드   2004-11-23 PM 11:23:01  
아직도 "포인터" 같은게 생소하네요 -.-
지상현   2004-11-24 AM 1:37:07  
예제를 적극 활용할 계획입니다;
강현구   2004-11-24 PM 12:49:16  
포인터는... 메모리에 있는 변수의 주소 아닌가요?
(저도 깡통;;;)
지상현   2004-11-24 PM 6:45:27  
대충 적기 시작했지만 이거 글이 너무 어수선하네요 -_-
제대로 다시 설명을;;;
LIST ALL               GO TO THE TOP


N
   Subject
Posted by
Date
H
69
   리소스 해커를 이용하여 DLL 파일안의 HTML 문서 넣기! [4]
qkrwhdgns 2005/07/20  5662
68
   [끼적강좌 8]RPG게임을 만들어보자 [1강] [3]
권선중 2005/07/16  6065
67
     [re] [끼적강좌 8]RPG게임을 만들어보자 [2강] [1]
권선중 2005/07/17  5693
66
   [끼적강좌7] 달력 구현강좌 [1강][초급]
권선중 2005/07/11  5146
65
     [끼적강좌7] 달력 구현강좌 [2강][고급]
권선중 2005/07/15  4850
64
       [끼적강좌7] 달력 구현강좌 [3강][응용]
권선중 2005/07/16  4632
63
   [끼적강좌 6] 선중이 계발한 암호화구현 [7]
권선중 2005/06/29  4860
62
   [끼적 강좌] 기본문법을 알아야 한다...! [10]
권선중 2005/06/27  4921
61
   [끼적강좌 5] 로그인 구현강좌 [1강][초급] [6]
권선중 2005/06/24  5446
60
     [끼적강좌 5] 로그인 구현강좌 [2강][중급] [2]
권선중 2005/06/25  5567
59
       [끼적강좌 5] 로그인 구현강좌 [3강][고급] [3]
권선중 2005/06/26  5351
58
         [re] [끼적강좌 5] 로그인 구현강좌 [4강][다계정 구현] [5]
권선중 2005/06/27  5003
57
   마우스 오른쪽 눌렀을때의 메뉴 뜨게하기(초보용)
이시영 2005/02/02  5143
56
   [쉬운강좌1]환경파일 다루기 [3]
정성우 2005/01/11  5460
55
   영문 윈도우에서의 창조로 만든 프로그램.. [16]
손상진 2005/01/02  5942
54
   [ps.구루 강좌 #12♭]포인터를 왜 씁니까? [2]
ps.이진백 2004/12/31  6308
53
     [re] [ps.구루 강좌 #12♭]포인터를 왜 씁니까? [1]
지상현 2005/01/01  5622

   창조의 한계를 뛰어 넘어서 #1: '문자' 포인터 써먹기 [4]
지상현 2004/11/23  6930
51
   [ps.구루 강좌#11] 서비스팩2에서 프로그램 추가/제거 설정
ps.이진백 2004/10/26  5464
50
   대박로또에 적용된 자동업데이트 알고리즘.. [7]
최재일 2004/09/13  7935
49
   [삐까뻔쩍강좌] 오랜만에 글쓰네.. [10]
박재성[날개달기] 2004/09/07  4982
48
   [보충강좌#10-1] *.Res를 위한 *.Rc [1]
ps.이진백 2004/08/12  6153
47
   [강좌#10] DLL에 HTML 쑤셔넣기 [6]
ps.이진백 2004/08/06  6210
46
   방금생각한 암호화 알고리즘 - -;; [2]
박재성[날개달기] 2004/07/29  5666
45
   [끼적강좌 4] 창조 구현 DB강좌 [1강] [5]
권선중 2004/07/25  5825
LIST ALL   Prev [1][2] 3 [4][5] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인