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


LIST ALL
Posted by 지상현2004-11-23 21:24:22, Hit : 6952
창조의 한계를 뛰어 넘어서 #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
94
   [강좌] 조건문 사용하기 [6]
카멜 2002/12/14  7115
93
   창조 로 만든 프로그램의 메모리 사용률을 낮춰보자 [2]
Pueding 2002/09/08  7104
92
   창조로 빠져보는 API #1 [2]
지상현 2005/09/04  7067
91
     [0강] ㅎ배경의 좌표 체계에 대해서 알아보자! [2]
박종훈 2009/10/24  7049
90
   객체 배열을 정복해보자! [1]
지상현 2010/06/28  7023
89
   [강좌]충돌알고리즘 설명. For 게임만들기 [1]
김환욱 2004/06/17  7020

   창조의 한계를 뛰어 넘어서 #1: '문자' 포인터 써먹기 [4]
지상현 2004/11/23  6952
87
   [쉬운강좌]창조에서 이쁜 아이콘 사용하자. [1]
창조신화 2002/09/08  6768
86
   [쉬운강좌]#2.레지스트리 이용하기. [1]
창조신화 2002/09/08  6710
85
     [re] [요청강좌#14] DLL제작 강의 (미완성) [2]
지상현 2005/10/09  6698
84
   [수정!] 직선, 사각형, 타원, 원, 호, 현을 그려보자! [4]
박종훈 2009/05/10  6679
83
   [0강] 그림판에 그림을 그려보자!
박종훈 2009/10/24  6651
82
   API를 알아보자 #1
지상현 2003/04/10  6616
81
   창조 시작단계 문법배워볼까? [M 0608181240] [8]
박종훈 2006/08/17  6531
80
   한글이 입력되기까지 [4]
지상현 2006/07/29  6509
79
   [강좌] 창조 명령어로 운영체제를 판가름 해 보자! [5]
카멜 2002/12/14  6397
78
   [끼적강좌 4] 텝 메뉴 만들기 [입문] [2]
권선중 2004/02/28  6376
77
   창조로 빠져보는 API #2 [3]
지상현 2005/09/04  6355
76
   [ps.구루 강좌 #12♭]포인터를 왜 씁니까? [2]
ps.이진백 2004/12/31  6332
75
   [펌][강좌] 기초적인 압축 알고리즘 [8]
날개달기 2003/04/14  6324
74
   재미있는 포인터 강좌 -1- [2]
지상현 2005/10/12  6296
73
   맞짱! 포인터(Pointer) - 1부 [C언어 들춰보자!] [7]
박종훈 2009/02/26  6291
72
             [4강] 현, 호를 그려보자! [4]
박종훈 2009/10/24  6280
71
   창조 초보자들을 위한 아주 기본적인 사용법
김대명 2011/03/09  6241
70
   [강좌#10] DLL에 HTML 쑤셔넣기 [6]
ps.이진백 2004/08/06  6241
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이희철
로그인