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


LIST ALL
Posted by 지상현2004-11-23 21:24:22, Hit : 6936
창조의 한계를 뛰어 넘어서 #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
119
   효과적인 조건문을 위한 논리연산자 [4]
박종훈 2006/10/15  6040
118
   환경파일로 파워유저되어보자![개정판] [예제/사용!] 2 [6]
박종훈 2007/01/02  7764
117
   환경파일로 파워유저되어보자![개정판] [설명] 1 -- 완성
박종훈 2007/01/02  6110
116
       환경문 강좌..^^; [진리형 자료] [1]
qkrwhdgns 2006/01/11  5020
115
         환경문 강좌..^^; [예제 소스]
qkrwhdgns 2006/01/11  5281
114
     환경문 강좌..^^; [실수형 자료] [1]
qkrwhdgns 2006/01/11  5250
113
   환경문 강좌..^^; [문자형 자료] [8]
qkrwhdgns 2006/01/10  5638
112
     호현계산기2 Rev2 [6]
박종훈 2009/10/23  5870
111
   한글이 입력되기까지 [4]
지상현 2006/07/29  6471
110
   컴퓨터에서 소수점을 표기하는 방식에 대해 [1]
지상현 2012/01/03  7512
109
   창조입문. :창조란 무엇인가?&CDP만들기: [9]
변혁수 2002/09/06  9941
108
   창조입문 : 메모장 만들기 [2]
신용주 2008/12/20  7550

   창조의 한계를 뛰어 넘어서 #1: '문자' 포인터 써먹기 [4]
지상현 2004/11/23  6936
106
   창조의 변수형에 대한 고찰 [1]
지상현 2012/01/03  5782
105
   창조와 ActiveX (2)
지상현 2007/08/11  10791
104
   창조와 ActiveX (1)
지상현 2007/08/07  8277
103
   창조에서 반올림하기 [1]
지상현 2013/01/05  5007
102
   창조로 빠져보는 API #3 [13]
지상현 2005/09/04  7267
101
   창조로 빠져보는 API #2 [3]
지상현 2005/09/04  6332
100
   창조로 빠져보는 API #1 [2]
지상현 2005/09/04  7048
99
   창조 초보자들을 위한 아주 기본적인 사용법
김대명 2011/03/09  6221
98
   창조 첫 시작시 명령어 익혀보자~ [4]
박종훈 2006/12/23  8043
97
   창조 시작단계 문법배워볼까? [M 0608181240] [8]
박종훈 2006/08/17  6514
96
   창조 로 만든 프로그램의 메모리 사용률을 낮춰보자 [2]
Pueding 2002/09/08  7092
95
   재미있는 포인터 강좌 -1- [2]
지상현 2005/10/12  6277
LIST ALL   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이희철
로그인