C¾źČē“É·Æi ..
271:ftHg̼³µ³ń
10/04/19 23:42:42
>>268
“¾Į½ē³K\»Ŗg¦é¾źÉ¦°æį¢»¤
272:ftHg̼³µ³ń
10/04/19 23:46:05
³K\»ĶOCuÅā®Å«éń¶įČ¢ĢH
273:ftHg̼³µ³ń
10/04/20 00:41:09
>>270
> fprintfÅāĮ½ē|C^¶į_¾ĮÄ{ēź½ĢÉA
±±ēÓŖĮÉšÅ«Č¢
274:ftHg̼³µ³ń
10/04/20 00:48:12
fprintf(filep, end-start, start);
Č“¶ÅāĮÄŻ½ēA
3ŌŚĢargumentĶ|C^¶įincompatible¾ŗ
ĮÄG[Ŗo½
275:ftHg̼³µ³ń
10/04/20 01:47:17
½Å»¤¢¤ĻČóɵ½Ģ©ķ©ēńŖA»ź¾Ę
2ŌŚĢų č¦ńX
ĮÄG[ŖoČ¢©H
276:ftHg̼³µ³ń
10/04/20 02:42:10
#include <stdio.h>
#include <string.h>
int main( void )
{
char source[256];
char value[256];
int i,j, k = 0;
strcpy( source, "<name>2ch C¾źX</name>" );
/* k¶ÜÅøš±Æé */
for( i = 0; i < 256 || source[i] != '\0'; i++ ) {
/* Jn^Ošo => ̶Ŗu/vÅĶČ¢ */
if( source[i] == '<' && source[i+1] != '/' ) {
/* u>vŖo³źéÜÅ1¶øĀ²×é */
for( j = ++i; source[j] != '>'; j++ );
i = j;
}
/* I¹^Oo => u<vĢŖu/v*/
else if( source[i] == '<' && source[i+1] == '/' ) {
/*»źČćģ·éKvŖČ¢ĢÅ[vš²Æé */
break;
} else {
/* I¹^OŖo³źéÜÅAŹŪ¶pzńÖ1¶øĀi[ */
value[k++] = source[i];
}
}
/* k¶}ü(¶ńʵĬ§³¹é×) */
value[k] = '\0';
printf( "ĪŪ¶ńF%s\n", source );
printf( "o¶ńF%s\n", value );
@@@@@@@return 0;
}
277:ftHg̼³µ³ń
10/04/20 02:43:05
20Ŗē¢Å¢½ŖAsprintf()ÅāéūŖŖšYܹ½B
278:ftHg̼³µ³ń
10/04/20 11:17:59
^OšĮ·¾ÆČē±źÅąØ
#include<stdio.h>
#include<string.h>
int main(void)
{
char source[256];
char value[256]="";
char *p, *q;
strcpy(source, "<name>2ch C¾źX</name>dummy string<br><br>");
strcpy(value, source);
for(p=value;(p=strchr(p, '<'));)
{
q=strchr(p+1, '>');
if(q==NULL) break;
memmove(p, q+1, strlen(q+1)+1);
}
printf( "ĪŪ¶ńF%s\n", source );
printf( "o¶ńF%s\n", value );
return 0;
}
279:ftHg̼³µ³ń
10/04/20 11:32:01
sprintf šgĮÄŻ½
#include<stdio.h>
#include<string.h>
int main(void)
{
char source[256];
char value[256]="";
char *start, *end, *dest=value;
strcpy(source, "hello<name>2ch C¾źX</name>dummy string<br><br>");
for(start=source;(end=strchr(start, '<'));)
{
dest+=sprintf(dest, "%.*s", end-start, start);
start=strchr(end+1, '>');
if(start==NULL) break;
start+=1;
}
if(start) sprintf(dest, "%s", start);
printf( "ĪŪ¶ńF%s\n", source );
printf( "o¶ńF%s\n", value );
return 0;
}
280:ftHg̼³µ³ń
10/04/20 18:45:20
wb_ÉvZĮÄ¢¤vOČń¾Ŗķ©él¢éH
|C^špµÄwb_t@CĘ\[Xt@CQĀg¤ēµ¢
ČPČ«µZݽ¢Čń¾ÆĒķ©ēń
281:ftHg̼³µ³ń
10/04/20 19:07:02
>>280
ķ©éę
282:ftHg̼³µ³ń
10/04/20 19:43:26
wb_t@CÉvZ·éÖš¢ÄØĘ©?
283:ftHg̼³µ³ń
10/04/20 20:24:07
>>280
ś{źÅØk
284:ftHg̼³µ³ń
10/04/21 00:31:15
URLŲŻø(ux.getuploader.com)
±źĢ\¦·étHgšĻ¦½¢Ęv¤ĢÅ·ŖlÉĶxŖ·¬Åµ½@Q[̶»`[ÅX¢¶éĘś{ź»Å«éę¤ÉČčÜ·BDZÅtHgšwčµÄ¢éĢŵ天BšĶØč¢µÜ·B
285:ftHg̼³µ³ń
10/04/21 13:45:26
Āį¢
286:ftHg̼³µ³ń
10/04/21 18:57:30
CĢüåšĒńÅ
WÖĘWinsckšg¢vO~OÅ«éę¤Éȵܵ½B
±ĢĢiKʵÄĶĒĢę¤ČwKš·źĪ¢¢Åµå¤©H
Q[ČĒĶģéĀąč čܹńB
Ŗāč½¢±ĘĶę(OCRnĢęšĶ)ā
lbg[NŹMi©Ŗp\RĘFBĢp\RÅŹM·éęČĢ)š
ģč½¢ĘvĮÄÜ·B
lbg[NŹMĶWinsockšąĮĘ×·źĪ¢¢©ČHĘv¢Ü·ŖA
ęČĒĶǤČńŵå¤H
287:ftHg̼³µ³ń
10/04/21 19:03:55
>>286
p\RŹMij
288:ftHg̼³µ³ń
10/04/21 19:11:25
>>286
Ęč ¦ø®®ĮÄŻ½H
éöx»źÅTvšĀ©ŽŁ¤Ŗ¢¢Ęv¤
289:ftHg̼³µ³ń
10/04/21 19:11:43
>>287
p\RŹMÅ·©EEE
»źĶWinsockĘĶį¤ĢÅ·©H
290:ftHg̼³µ³ń
10/04/21 19:14:04
>>286
lbg[NŹMĶWinsockšąĮĘ×·źĪ¢¢©ČH
WinsockĢī{³¦ķ©źĪA
i©Ŗp\RĘFBĢp\RÅŹMjöxČēģźéĶø¾ęB
ģźĪ¢¢¾ÆB
ęČĒĶǤČńŵå¤H
ĮɽąKvÅČ¢ęB·®ÉģźĪ¢¢ń¶įČ¢B
OCRČēåµ½mÆČĒČÄą·®ÉģźéęB
µ®ē¢Ķ©ŖĢŖÅl¦ę¤ęB
291:ftHg̼³µ³ń
10/04/21 19:16:00
>>290
> OCRČēåµ½mÆČĒČÄą·®ÉģźéęB
OCRŖ·®ģźéĮÄH
ØO·²·¬¾ė
> µ®ē¢Ķ©ŖĢŖÅl¦ę¤ęB
»źĶÜ ²ąĮĘąB
292:ftHg̼³µ³ń
10/04/21 19:21:00
>>290
čŖĘ¤²“¢Ü·B
OCRĮÄČPČńÅ·©EEE
ę£ĮÄģĮÄŻÜ·B
293:ftHg̼³µ³ń
10/04/21 19:28:46
>>291
OCRĮľĮÄąs«č¾ėB»čį»ixͳÉÜĮÄéB
ÆĒAį¦ĪÉĄčµ½ąĢĘ©A
xN^[ÅČrbg}bvx[XÉ·éĘ©A
»¤¢¤ĄčŖ źĪ·®Éģźé¾ėB
ÅĶ»źÅ¢¢ń¾µA»±©ēüĒšĮ¦Ä¢ÆĪōēÅąFƦĶÅ«éB
294:ftHg̼³µ³ń
10/04/21 19:33:06
>>293
jpgt@CĘ©ÅÅĶp¾ÆĢšĶšµ½¢ĢÅ·EEE
ČÉš×·źĪ¢¢Å·©H
zgÉüåćŖčÅÅßāĮĘWinsockÅFTPāPOPAHTTPŹMŖ
Å«éę¤ÉČĮÄ«½ŠęĮ±Å·EEE
295:ftHg̼³µ³ń
10/04/21 19:46:54
vĘ©p^[FÆĘ©
ȱʚµ½¢ČēEF[ubgĻ·Ę©ÅĮ„oÅ«é
ČPÉāč½¢ČēOpenCVÅÅ«éAÜ“Ŗm软źĪSIFTĘ©SURFĘ©Ģ_¶ĒßĪ¢¢ę
SIFTĘ©ĮŖ é©ēCštÆÄĖ
lbg[NÖWĶźå¶įČ¢ĢÅŚµĶmēČ¢
gX|[gwµ©µĮ½±Ę³¢ĢÅAڵͼĢlŽ
296:ftHg̼³µ³ń
10/04/21 20:29:38
ĶętH[}bgšmé±Ę¶įČ¢ĢH
rbg}bvĶP¾©ērbg}bv©ēͶßéĘĒ¢B
rbg}bvęšĒݱńÅ»µÄoĶ·éc[šĀź
297:ftHg̼³µ³ń
10/04/21 20:44:16
>>295
čŖĘ¤²“¢Ü·B
_¶ĮÄźčČńÅ·ÆĒA
āĮĻčšÆÄŹźČ¢ĢÅ·ĖEEE
>>296
ķ©čܵ½B
rbg}bvę©ēģ¬µÄŻÜ·B
CuĶDXÅ¢¢Å·ęĖH
298:ftHg̼³µ³ń
10/04/21 21:08:04
bĢWCu¾ÆÅ\ŖBR\[ÅĒ¢B
299:ftHg̼³µ³ń
10/04/21 21:15:20
»ą»ąsńĘ©t[GĻ·Ę©µĮÄéĢ©Č?
300:ftHg̼³µ³ń
10/04/21 21:17:00
pćw×·źĪ¢¢Ęv¤ę
ęASYĘ©»ĢąĢøĪčĢ{ą éµB
wZsĮĢȢĢČēfW^ęĘ©Ģi±×·źĪ¢¢ńÅąČć?
301:ftHg̼³µ³ń
10/04/21 21:19:16
ĘiĶNQń±Ŗ é©ē§ķµ½ē?
©M éČēQ½č©ēnßéĘ¢¢©ąV
RĶībmƾ©ē¼
302:ftHg̼³µ³ń
10/04/21 22:59:49
ĘiÅ·©EEE
ī{īńZpŅČēßćĢIšC¾źÅęčܵ½B
19NxĢt±B
303:ftHg̼³µ³ń
10/04/21 23:07:25
>>300
ÅąøĪč jpg šą¾µ½ŠĘČéĘ¢¢ĢŖŻĀ©ēČ¢Č B
URLŲŻø(www.amazon.co.jp)
±źĢęźÅĶąĮÄ¢éAąĮĢ龯āÆĒB
304:ftHg̼³µ³ń
10/04/21 23:43:40
>>303
“Ķ»Ģ{ÅJPEGĢGR[hEfR[hĶĄÅ«½Č[B
DCTĘ©TOIČʱėĶu±źČēķ©éIpw³ŗvi¾ĮÆHjŖŖ©čā·©Į½B
305:ftHg̼³µ³ń
10/04/22 00:10:14
#include <stdio.h>
#include <string.h>
#include <locale.h>
#include <stdlib.h>
#include <wchar.h>
main(){
wchar_t kana[] = L" ¢¤¦Ø©«Æ±";//---1
setlocale(LC_ALL, "");
printf("kana::%ls\n", kana);
printf("kana[2]::%lc\n", kana[2]);
wchar_t wbuf[81], *p1;//----------------------2
printf("enter wide_byte character::\n");
fgetws(wbuf, sizeof wbuf, stdin);
if((p1 = wcschr(wbuf, '\n')) != NULL)
*p1 = L'\0';
setlocale(LC_ALL, "");
printf("wbuf_no_naiyou::\n");
printf("%ls\n", wbuf);
printf("wbuf[2]::%lc\n", wbuf[2]);
return 0;
}
306:305
10/04/22 00:12:58
windowsćbccÅAś{ź¶ńĢüĶšzńÉóÆęĮÄA»ĢvfÉANZX·éĢŖŚIÅ·B
1ł¶ĢCh¶ńÖĢANZX
ŖÅ«½ĢÅA
2Ch¶ńĢüĶšóÆÄ»ĢvfÖĢANZX
šµę¤Ęµ½ĢÅ·ŖAfgetwsÉ1byte¶šü͵½Ę«Ķ¤Ü¢ĢÉA
Ch¶šüĶ·éĘfgetwsĢGR[obNŖ©¦éʱėÅ~ÜĮĵܢܷB
Ǥµ½ē¢¢Åµå¤HŻ©©Ļ·vOš¢ÄŻę¤ĘvĮ½ĢÅ·B
307:ftHg̼³µ³ń
10/04/22 00:23:25
ęĢiͱźÅµå
CG-ARTS¦ļb2010CGč
URLŲŻø(www.cgarts.or.jp)
±źšR©ēnßźĪZ¶öxĢwĶ©ēßÄąåäv
308:ftHg̼³µ³ń
10/04/22 00:28:06
>>306
c¶įČÄrubyÅāĮ½ē?
C¶įȫ᢯ȢRĮĽ?
309:ftHg̼³µ³ń
10/04/22 00:28:36
@³ćĢR©ēÅ·
310:ftHg̼³µ³ń
10/04/22 00:29:17
>>297
Cug¤ńČēŹÉĒĢ`®©ēÅą¢¢ę
t@CtH[}bgšméKvą½¢µÄČ©ė
311:ftHg̼³µ³ń
10/04/22 00:37:41
Ö¦
312:ftHg̼³µ³ń
10/04/22 01:06:51
³ĖĖ
313:ftHg̼³µ³ń
10/04/23 08:37:56
>>306
MicrosoftÅāĮ½ē?
bcc¶įȫ᢯ȢRĮĽ?
314:ftHg̼³µ³ń
10/04/23 14:25:37
intĢQ³zńšg¢½¢ĢÅ·ŖAint hoge [ģč½¢]u±±v©±±ĶČÉš\µÄéĢÅ·©H
charČēoCg¾Ęv¤ĢÅ·ŖAintĶoCgŖÜĮĽĘv¤ĢÅ·Ŗ
ģč½¢ÜÅĢeŌÉε½intšęčoµ½¢ĢÅ·
315:ftHg̼³µ³ń
10/04/23 15:03:35
>>314
ØOŖ¢¤Ę±ėĢ2³zńĮÄČń¾H
¢ŌÅĶvfŖ n ĀĢzń(1³zń)Ķ hoge[n] Å čA
vfŖ n x m ĀĢzń(2³zń)š hoge[n][m] Å\·B
1³Å«čéČē1³zńšg¦B
316:ftHg̼³µ³ń
10/04/23 15:03:44
»źČē1³zńÅęĖH
317:ftHg̼³µ³ń
10/04/23 15:05:53
ĀÜčint hoge[ģč½¢]Å¢ÆéĮıĘÅ·©B
»¤¢¤g¢ūšSRmčܹńŵ½B čŖĘ¤²“¢Üµ½
318:ftHg̼³µ³ń
10/04/23 15:06:33
>>314
int hoge[3]; ĶintŖ3ĀĄńÅéB
int hoge[3][4]; ĶintŖ4ĀĄń¾ąĢŖ3ĀĄńÅéB
hoge[0][0], hoge[0][1], hoge[0][2], hoge[0][3], hoge[1][0], hoge[1][1], ... ĢÅB
intĢoCgĶKiÅÅč³źÄ͢ȢB
ĄŪÉRpC·éɻ̫ŽoCgÉČé̩ͻčįÜĮÄéÆĒB
”ĶPCĢĀ«¾ĘŁĘńĒ4oCgB
319:ftHg̼³µ³ń
10/04/23 15:16:51
charÅoCgšwčµÄ2³zńA©B
»źĶ½Ōń¶ńĢzńšģė¤ĘµÄ¢½ń¶įČ¢©ČB
320:ftHg̼³µ³ń
10/04/23 18:05:22
C¾źÅV[U[ĆĢšĒvOšģĮĢܷB
čʵÄĶAĆ»³ź½¶ńšü͵Ä1¸¶ńšøēµÄ
26Źč̶ńšoĶ·évOÅ·B
#include<stdio.h>
int main(void)
{
char ang[8]; //”ńĶÅå8¶Ģ¶ń
int i,j;
for(i=0;i<26;i++){
for(j=0;j<8;j++){
printf("%c",ang[j]+i);
}
}
ßĶASCIIR[hĢZĘaŖqŖĮÄ¢éąĢĘv¢±¤gń¾ē
ZĢćÉĶLŖüĮÄ¢ÄlÜĮĵܢܵ½B
A-ZÜÅĢzńšģĮÄ»ĢÅń·AĘ©ASCIIR[hÅąZĢšAÉ·é
Ę©FXl¦Üµ½ŖAǤµÄ¢¢Ģ©ŖŖ©ēȢŷcB
²w±Øč¢µÜ·B
321:ftHg̼³µ³ń
10/04/23 18:10:44
(ang[j] - 'A' + i) % 26 + 'A'
322:ftHg̼³µ³ń
10/04/23 18:28:17
>>320
isalpha()
323:ftHg̼³µ³ń
10/04/23 18:37:27
>>320
{čĘĶÖWČ¢ŖA
>char ang[8]; //”ńĶÅå8¶Ģ¶ń
ang[8]¾ĘÅå7¶Ģ¶ńČ
324:ftHg̼³µ³ń
10/04/23 18:41:29
NULI[¶ńĘ;ĮÄČ¢ĢÅAŌįĮĢȢ
»źÉprintf("%c",ang[j]+i);¾©ēANULĶKvƵĢȢĘĒßé
325:ftHg̼³µ³ń
10/04/23 18:50:38
|C^³ä@ĮÄ·¢½ÆĒ
C¾źĢüåƩɢÄéę¤Č¬³¢TvR[h¾Ę
SRļµČĽŖļµ¢Ģ©ķ©ēČ©Į½B
|C^ĮÄČń©Žø©µ¢Ŗ éĢH
326:ftHg̼³µ³ń
10/04/23 18:51:26
NULI[
327:ftHg̼³µ³ń
10/04/23 18:53:34
Ŗ©élÉĶļµČ¢AŖ©ēČ¢lÉĶļµ¢B
µźźĪǤĮıĘĶČ¢B
328:ftHg̼³µ³ń
10/04/23 19:00:50
>>325
üåҪﵢ͸ȢB
329:ftHg̼³µ³ń
10/04/23 19:04:05
SŅĶALinkedListš©OÅĄµÄŻHĮľķźÄßÄA
©ŖŖ|C^ššµÄ¢Č¢±ĘÉCĆąĢB
330:ftHg̼³µ³ń
10/04/23 19:07:33
>>325
lÉęéń¶įČ¢H
“ĶÖ|C^ĢšŖx©Į½ÆĒA¢“šµ½ēČɪﵩĮ½Ģ©Ŗ©ēČČĮ½Č
331:ftHg̼³µ³ń
10/04/23 19:11:03
½ąLvČīńĶc³øÉĒŽąĢšsõɳ¹é¾ÆĢXš·éāĀĶĖĪ¢¢ĢÉČ
332:ftHg̼³µ³ń
10/04/23 19:12:48
int (*(*foo)(int (*(*)(void))(void)))(int (*)(void))
333:ftHg̼³µ³ń
10/04/23 19:13:21
“ĶĖĪ¢¢Ę©vķČ¢ÆĒAČńÅ>>331Ķ©EµČ¢ĢH
334:ftHg̼³µ³ń
10/04/23 19:20:08
Īß²ŻĄĘzńŖ²ĮæįÉČĮĵܤʱė
ézńĢĄvfŖ@Īß²ŻĄÅ éiĪß²ŻĄzńjź@zńÅ éi2³zńjź
e»ź¼źÅALÆĢęĢzuŖ{æIÉį¤ĢɚūéÜÅĢ~Ŗ¢B
łÉ©źÄ¢éLqšĒŽĢĶĀ\Åą
āč½¢±ĘšĄ·éĢÉAĒæēŖKŲ©šIšÅ«é©@Ŗ·°Īß²ŻÄ
335:ftHg̼³µ³ń
10/04/23 19:21:54
ÖĢųāßčlÉ|C^ĻŖgķźéźČń©ąSŅͬµā·¢Č
336:ftHg̼³µ³ń
10/04/23 19:24:36
³zńĮÄ
±ńČ“¶Å
zńĢĄvfŖ|C^ĮÄĢĶ
Ø
Ø
Ø
Ø
Ø
±¤¢¤±ĘH
337:ftHg̼³µ³ń
10/04/23 19:30:14
>>336
ØØę» yes
wµÄ¢éęŖĒ꾯Ģ嫳ĢķŖ é©¢mč & ŁĘńĒmépͳ¢
i³ēÉAs³ČźšwµÄ¢éĀ\«ą éńj
Ø
Ø
Ø
ØŹéŪI
Ø@©ē«
±¤¢¤±ĘŖ č¾é
338:ftHg̼³µ³ń
10/04/23 19:34:43
>>321
Į½]čÅl¦éĘ¢¤vlŖ čܹńŵ½cB
čŖĘ¤²“¢Üµ½I
>>322
^UÅif¶ģéĮÄĢŖ éĢšmčܹńŵ½B
×ÉČčܵ½I
339:ftHg̼³µ³ń
10/04/23 21:27:13
>>332
±źÖ|C^H
DLLĢÖš®IÉÄŌĘ«ÉA
GetProcAdressijÅÖ|C^ęĮÄé碵©g¢¹ŖŖ©ēńB
340:ftHg̼³µ³ń
10/04/23 21:38:28
Ŗ©čā·»¤ČʱėšIŌʵ½ēCxgnhĘ©©ČB
341:ftHg̼³µ³ń
10/04/23 22:14:53
>>339
ųšęēøųšęēøintšŌ·ÖÖĢ|C^šŌ·ÖÖĢ|C^šęčA
ųšęēøintšŌ·ÖÖĢ|C^šęčintšŌ·ÖÖĢ|C^šŌ·Ö
ÖĢ|C^¾ĖB
342:ftHg̼³µ³ń
10/04/23 22:27:42
¦¦¢A¢¢©ēŁĮÄtypedefµė
343:ftHg̼³µ³ń
10/04/23 22:35:09
typedefµÜčŲŖŠėŖčń®
344:ftHg̼³µ³ń
10/04/23 23:21:31
URLŲŻø(kansai2channeler.hp.infoseek.co.jp)
ŌƼOŖ_ÉLü³ź½eLXgšĒŻńÅAƼOÉŖÆÄzńÉi[µAŌøčÅĄ×©¦ÄeLXgt@CÅo͵½¢ĢÅ·Ŗ
Ą×©¦Ŗ¤Ü¢«Ü¹ń
Ęč ¦øģĮÄŻ½ĢÅ·Ŗc
AhoCX¾³¢
345:ftHg̼³µ³ń
10/04/23 23:26:57
>>344
tmp Ķ¢ēČ¢
\[gŖÅ«Ä¢Č¢
\[gŖIķĮÄ©ēoĶ·źĪ¢¢
N©Éʳ¹ÄąēĮ½ĢH
346:344
10/04/23 23:33:00
ßÉģĮ½āĀš½Ā©gŻķ¹ÄģĮĽ籤Ččܵ½c
347:ftHg̼³µ³ń
10/04/23 23:33:07
>>344
ŌA¼OAeLXgĢč`š·éĘbŖ¢Ęv¤B
įF
ŌĶA'0'©ē'9'̶©ēČé¶ń
¼OĶAŠēŖČA©½©ČAæ©ēČé¶ń
eLXgĶAŌƼOšXy[X©ēČé¶ńÅAÅćČOĢŌØęѼOĢćÉĶKøXy[XŖéB
11113 3333 5892739 Rc 12128384 “ 32939 8883 ×ģ 32932399
ʩB
348:ftHg̼³µ³ń
10/04/23 23:37:36
>>344
qg
for
@ @ fscanf
for
@ @ for
@ @ @ @ if
for
@ @ fprintf
349:ftHg̼³µ³ń
10/04/23 23:41:59
>>344
Üø
@1.t@CšSĒŽ
@2.ĄŃÖ¦šs¤
@3.ĄŃÖ¦½f[^št@CÉ
ĮÄ¢¤¬źÉ«·¦Ä
2.ĢŖš¶Įčl¦ÄŻÄ¾³¢B
350:349
10/04/23 23:43:51
>>348
ąė©ŌĮ½X}
351:ftHg̼³µ³ń
10/04/24 00:47:16
Ö©ē\¢ĢšŌ·KvŖ éźA½©īāčĪĶ čÜ·©H
±¤¢¤Éͱ¤·źĪǢƢ¤wjŖ źĪm轢ŷB
//\¢ĢĢį
struct my_struct {
@int size;
@void *ptr;
@int data[];
};
//(1)createÖĢÅ\¢ĢšmallocµÄAdeleteÖĢÅfree·éB
struct my_struct* create_my_struct(int param);
void delete_my_struct(struct my_struct* md);
//(2)ÄŃoµ³Å\¢ĢšmŪµÄAinitÖĢÅo[šmallocµÄAreleaseÖĢÅo[šfree·éB
// \¢Ģ»ĢąĢĶÄŃoµ³ÅǤɩ·éB
int init_my_struct(struct my_struct* md, int param);
void release_my_struct(struct my_struct* md);
»ź¼źŗLĢfbgŖ éĘv¢Ü·B
(1)ĢfbgĶÄŃoµ³Åüź½¢[ĢęŖ éźAcreateµ½\¢ĢšRs[·éKvŖ éB
(2)ĢfbgĶÄŃoµ³ÅinitšÄŌOÉ\¢ĢĢ嫳šmĮĢȯźĪ¢ÆČ¢B
352:344
10/04/24 00:55:12
F³ńĢAhoCXŹčɬźšl¦ÄA¢æ©ēāč¼µ½ē³¬÷µÜµ½B
čŖĘ¤²“¢Üµ½B
353:ftHg̼³µ³ń
10/04/24 01:20:37
>>351
iPjĢfbgŖęķ©ēńČ
»ĢĢęĮÄĢĶ create ÅmŪ·éń¶įČ¢ĢH
ĘRs[¤ńŹńĶRs[pĢÖÅOK?
354:ftHg̼³µ³ń
10/04/24 01:51:37
>>353
ĄĶ±ńČ“¶Å·B
struct my_struct* create_my_struct(int param)
{
@struct my_struct* md = (struct my_struct*)malloc(sizeof(struct my_struct) + sizeof(int)*param);
@md->size = param;
@md->ptr = malloc(param);
@return md;
}
void delete_my_struct(struct my_struct* md)
{
@free(md->ptr);
@free(md);
}
fbgĶAŗLĢę¤ČźAmemcpyŖKvȱĘÅ·B
int get_data(char* buf, int size)
{
@struct my_struct* md = create_my_struct(size);@@//©±±Åbufšn¹½ē
@int ret = memcpy(buf, md->ptr, size);@@@@@@@@@//©±±ÅRs[µČÄ¢¢
@delete_my_struct(md);
@return ret;
}
355:ftHg̼³µ³ń
10/04/24 02:02:09
Čń©įa“Ŗ éČBǤ¢¤vzČń¾ė
356:ftHg̼³µ³ń
10/04/24 02:49:32
>>354
*ptrĢg¢¹ĶČń¾ėBĀ[©Aeµā·³dČ籤¶įĖH
typedef struct {
@int size;
@int chinko;
@int unko;
@int data[];
} unko_t ;
unko_t *create_unko( unko_t *md, char *buf, size_t size )
{
@md = malloc( sizeof(unko_t) + sizeof(int)*size );
@if(md){
@@md->size=size;
@@memcpy(md->data,buf,size);
@}
@return md;
}
int get_data(char *buf, int size)
{
@unko_t *md;
@if( create_unko( md, buf, size )==NULL ) perror("unko");
357:ftHg̼³µ³ń
10/04/24 02:50:30
rÅMµæįĮ½ęą¤Ē¤Åࢢā
358:ftHg̼³µ³ń
10/04/24 02:58:38
>>354
Üęķ©ēČ¢ń¾ÆĒA±ńČ“¶É·źĪOK?
struct my_struct* create_my_struct(int param, char *buf)
{
@struct my_struct* md = (struct my_struct*)malloc(sizeof(struct my_struct) + sizeof(int)*param);
@md->size = param;
@md->ptr = malloc(param);
@if (buf)
@@memcpy(md->ptr, buf, size);
@return md;
}
ČńɹęA\¢ĢĢTCYŖsčĮÄiKÅ create/delete ū®¾ĖB
ćÅąĮĘę¢Ąšv¢Ā¢½Ę«É༵ⷻ¤¾B
359:ftHg̼³µ³ń
10/04/24 02:59:04
¢āASR_¾ė
create_unko()ĢęźųŖē·¾µA\[XJśÅ«ČČĮÄéµ
Ē¤Åą¢¢ÆĒA¢ÜĒ«void *ĢćķčÉchar *gķČÄą
ĘAĻXµČ¢ĻÉĶconstš¾¦IÉtƽūŖK¹ÉČźé
360:ftHg̼³µ³ń
10/04/24 03:00:37
õÉ©ŌĮ½ÆĒÜ Ē¤Åą¢¢Č
361:351
10/04/24 03:04:33
Ŗ©čÉ©Į½ĢÅA>>354ÉĒĮµÜ·B
int do_some_process_to_my_struct(struct my_struct* md, int param)
{
@for(int i = 0; i < md->size; i++){
@@((int*)md->ptr)[i] = param+i;
@}
@return param+i;
}
int get_data2(char* buf, int size)
{
@struct my_struct* md = create_my_struct(size);@@//©±±Åbufšn¹½ē
@do_some_process_to_my_struct(md, 12345);
@int ret = memcpy(buf, md->ptr, size);@@@@@@@@@//©±±ÅRs[µČÄ¢¢
@delete_my_struct(md);
@return ret;
}
362:351
10/04/24 03:12:28
>>358
¢¢¦BOKÅĶȢŷB
memcpy·éĢĶ ÜÅąįÅ·ĢÅAcreateĢÉmemcpyšüźÄµÜ¤ĢĶbŖįĮĵܢܷB
mč½¢±ĘĶA>>351É¢½ĘØčAÖ©ē\¢ĢšŌ·źÉ
(1)Ę(2) é¢Ķ»Ģ¼Ģū@ÅĒ¢āčūŖ éĢ©AĘ¢¤±ĘÅ·B
363:351
10/04/24 03:19:32
>>361
int do_some_process_to_my_struct(struct my_struct* md, int param)
{
@int i;
@for(i = 0; i < md->size; i++){
@@((char*)md->ptr)[i] = (char)(param+i);
@}
@return param+i;
}
ÜÅąįÅ·ŖAŌįĮÄ¢½ĢÅł³µÜ·B
364:ftHg̼³µ³ń
10/04/24 03:23:36
āč½¢±ĘŖÜĮ½Ŗ©ēČČĮÄ«½ĢÅ
वČÉķ©čā·ĄįŻÅą¾Ž
365:ftHg̼³µ³ń
10/04/24 04:35:09
}NÅsubstitute·éĒ¢ū@³¢H
#define substitute_ptr(a) ??
#define fn_typedef(a,b) typedef a(*fn##substitute_ptr(a)##substitute_ptr(b))(b);
fn_typedef(ANYSTRUCT*const,int); Ø typedef ANYSTRUCT*const (*fnANYSTRUCTconstint)(int);
366:ftHg̼³µ³ń
10/04/24 06:47:19
printf( "sin(Ī) = %g \n" ,sin(M_PI) );
sinĪŖ0ÉČēČ¢ń¾ÆĒH
367:ftHg̼³µ³ń
10/04/24 07:04:50
»ńē¢Ģė·Ķoé¾ė
368:ftHg̼³µ³ń
10/04/24 07:47:45
>>351
struct my_struct {
@int size;
@struct {
@@char param;@@/* malloc ©ēchar^šzč */
@@int data;
@} elem[];
};
±¤¢¤Ó¤ÉyAɵ½ē_H
^ĢŁČéiµ©µvf̵¢jĀĻ·»²½ŽšĀ\¢Ģšęčµ¢½¢ę¤¾Ŗc
369:ftHg̼³µ³ń
10/04/24 09:17:20
>351
³XĢæāĶAźŹIÉĶ»Ģ2ŹčĢā詽¾ė¤AʦéB
µ©µ(1)ĢfbgŖšÅ«Č¢B
(1)ĢfbgĶÄŃoµ³Åuüź½¢[ĢęŖ éźvAcreateµ½\¢ĢšRs[·éKvŖ éB
ĘÉuüź½¢ĢęŖ éźvĘ¢¤ŖŖs¾B
|C^ŖoÉČĮÄ¢éĘ«ÉA»ĢĄĢŖ~µ¢ĮıĘH
>354 >361š©ÄéĘA ĮÄń¾©į¤ń¾©BcreatÖĢÅošę¾µę¤ĘµÄ¢éĢ©PJB
ąµoŖĢĄĢŖ~µ¢ČēA»¤¢¤@\šĄ»µ½ÖšģźĪę¢B
±ńČ“¶¶įČ¢©B
void get_data(struct my_struct* pMyData, void *pData)
{
@pData = malloc(pMyData->size);
@memmove(pData, pMyData->ptr);
}
370:ftHg̼³µ³ń
10/04/24 09:55:27
Ö|C^ĢzńÉ¢ij¦Ä¾³¢B
void func1( );
void func2( );
void main()
{
int i;
void (*func_ptr[2])( )= { func1, func2};
for(i=0; i<2; ++i)
{
(*func_ptr[i])( ); /* */
}
}
void func1( )
{
printf("func1\n");
}
void func2( )
{
printf("func2\n");
}
ćLĢvOÅfunc1Ęfunc2ŖĄsÅ«½ńÅ·ŖA
Ģʱėš(func_ptr[i])( ); ʵĹAfunc1Ęfunc2ŖĄsūܵ½B
Ö|C^ĢzńÉ*štƽźĘtÆČ¢źĶ½Ŗį¤Ģŵ天H
371:ftHg̼³µ³ń
10/04/24 10:00:40
281 ¼OFftHg̼³µ³ń[sage] eśF2007/11/08(Ų) 00:27:05
Ö|C^ĮÄćüĢ&ĘĄsĢ*ĮÄČÄą®ģĻķēČ¢ęĖH
ąĘąĘĶĒĮæŖ³µ¢ĢH
282 ¼OFftHg̼³µ³ń[sage] eśF2007/11/08(Ų) 01:06:42
³XKv¾Į½ēµ¢ŖAgccŖČń©_µÄĘ©g£ĘµÄČŖµÄąĒµ½ēA
¢ŌÉóÆüźēź½ČńÄbš·¢½±ĘŖ éB
372:ftHg̼³µ³ń
10/04/24 10:10:25
a[3]Ę*(a+3)ͽŖį¤
ĮÄ«ę¤ČąĢ
«ūŖį¤¾ÆÅÜĮ½Æ¶
373:351
10/04/24 10:42:37
>>368
struct my_struct Ķ ÜÅą\¢ĢĢźįÅ·B
”ńĢæāÅĶstruct my_struct ĢgšHv·é±ĘĶ ÜčdvÅĶ čܹńB
źŹIČbʵÄAÖ©ē\¢ĢšŌ·źĢAÖvg^CvĢŻvÉčĪŖ é©Ē¤©šmč½¢ĢÅ·B
±¤¢¤Éͱ¤·źĪǢƢ¤wjŖ źĪm轢ŷB
>>369
>|C^ŖoÉČĮÄ¢éĘ«ÉA»ĢĄĢŖ~µ¢ĮıĘH
¢¢¦B”AļĢIČ\¢Ģ ĮÄA»Ģ\¢Ģšµ¤ÖĢģčūšm轢Ƣ¤±ĘÅĶ čܹńB
æāĢÓ}ĶA
\¢Ģšś» é¢Ķ¶¬·éÖšŻv·éĘ«ĢźŹ_ʵÄA
į¦Ī
u|C^Ŗo[ÉČĮÄ¢é\¢ĢĢźĶ(1)ŖĒÄA»¤ÅČ¢\¢ĢĶ(2)ŖĒ¢vi©±źĶįÅ·Bj
Ę¢¤ę¤ČčĪŖ źĪmč½¢AĘ¢¤±ĘÅ·B
Å·ĢÅAget_dataĢģčūĶæāĢĪŪÅĶ čܹńB
æāĢĪŪĶ>>351Ģ(1)(2)ĢÖvg^CvÉĀ¢ÄÅ·B
374:ftHg̼³µ³ń
10/04/24 11:43:19
>>351
ļ|ŖĒŖ©ēń̾ŖAv·éÉA
\¢ĢĢgš®IÉšm۵ȿįČēńÉA
\¢Ģ©gą®IÉmŪµ½¢źA
źÉmŪµ½ūŖĒ¢Ģ©AŹXÉmŪµ½ūŖĒ¢Ģ©ĮÄbH
375:370
10/04/24 11:43:48
>>371-371
ń čŖĘ¤²“¢Ü·B
*štÆéĘAfunc1Ę¢¤Ö¼ÉČčÅIIÉĶA
Ö¼¾Æ¢½źĶAhXÉČéĘ¢¤[ÅAhXÉČéB
*štÆČ¢ĘAfunc1ĢAhXÉČé
ĒæēÅąÆ¶ę¤Éfunc1ŖĄs³źéĘ¢¤±ĘÅĮÄܷŵ天H
376:351
10/04/24 11:46:36
>>374
»¤Å·ĖB
Ǥ¢¤źÉĶźÉmŪµ½Ł¤ŖĒÄAǤ¢¤źÉĶŹXÉmŪµ½Ł¤ŖĒ¢Ę¢¤wjŖ źĪm轢ŷB
¼ÉąĮĘĒ¢āčūŖ źĪ»źąm轢ŷB
377:ftHg̼³µ³ń
10/04/24 12:59:50
>>376
»Ģ\¢ĢĢBĮļā¶½śŌĘĢk©Č
FILE ®ē¢@ŖæŖæÉBĮ·é
@@Öp¤Ķī{IÉoANZXµČ¢F@ģÖ(Q) ĘZbgÉČé
CČĢ©@i±ĢźĶ@create/delete Å®·×«j
XgIprÉßAestruct ̶½śŌĘͶ«Ä¢éKvŖ éŌŖ
į¤źĶAoĶ alloc ¹ø NULL ĢÜÜ
378:ftHg̼³µ³ń
10/04/24 13:23:31
>>351
`AāĮĻčAļ|Ŗ¢Ü¢æĒŖ©ēńČcB
>>354Ģget_data()Ģg¢ūš©éĘcreate_my_struct()µ½ÉA
ĢęĢmŪ¾ÆÅČAĄŪÉKvČf[^Ŗģ¬³źÄA
»Ģąešget_data()ÅųĮ£éĮÄdgŻĮÄFƵ½ń¾ŖA
ĮıĘĶA(1)ÅĢcreate_my_struct()ĶA
ĢmŪ¾ÆÅČAf[^ÜÅ쬷éĮÄFÆÅ ĮÄéH
ÅA(2)ÅĶinit_my_struct()Åf[^¾Æģ¬·éĮıĘH
¦±±ÅĢf[^ģ¬ĶAĢ®ImŪšÜŽ
ƾ¤Å źĪA»Ģinit_my_struct()Å쬷׫f[^Ķ
»ź¾ÆÅAźĀĢ\¢ĮıĘÉČé©ēA
»ź¼źpĢcreatešģéŖ³µ¢Ęv¤Ģ¾ŖH
¼Éinit_my_struct()šcreate_my_struct2()Ę·éĘ
create_my_struct()ĢÅcreate_my_struct2()šÄŃo·C[WB
ÅA»ĢXÅKvČcreate()šÄŌB
379:ftHg̼³µ³ń
10/04/24 14:04:10
>>376
“ąTĖ>>377ĘÆÓ©B
¼ĢāčūʵÄĶA\¢ĢČēÖĢßčlʵÄ
\¢ĢĢĄĢšŌ·ū@ą éęB
G[šŌµĆē©Į½čAČĢ¢āčū¾ÆĒB
380:ftHg̼³µ³ń
10/04/24 14:34:29
ĀᢾĮ½ē·ŻÜ¹ńBBB
C¾ź(WinAPIšÜŽ)ÅO[oIPAhXš³āčϦé±ĘĶūܷ©H
381:ftHg̼³µ³ń
10/04/24 14:42:44
ŹMÅ«ČČéŵå
382:ftHg̼³µ³ń
10/04/24 14:47:21
>>380
C¾ź(WinAPIšÜŽ)šgĮÄA½Ģ@ķĢO[oIPš
ĒńČÓ”ÅϦ½¢ĢÉęéČ
½ąµÄąA±ĢXČ¢±ĘĶm©B
383:351
10/04/24 14:59:48
>>377
>»Ģ\¢ĢĢBĮļā¶½śŌĘĢk©Č
ČéŁĒB±ĢwWĶl¦éćÅĢQlÉČ軤ŷB
½¾æåĮĘßĢæāĢÓ}ĘįĮÄ«½ĢÅAæåĮĘl¦¼µÜ·B
384:ftHg̼³µ³ń
10/04/24 15:06:31
>>381-382
³ĮıĘŵ天H
½Ę¦Īf¦ĀČĒÉ«ŽĘĒŅÉĶ
O[oIPŖķ©é($_SERVER["REMOTE_ADDR"])Ęv¤ĢÅ·ŖA
»źš[^Ap\RšVbg_EµČÄą
\tgÅČPÉĻ¦ēź½ēÖ©ČHĮÄvĮ½ĢÅEEE
ąĮĘ[ĖĮŽĘ
IPaēźÄµÜĮ½čµ½źÉ·®ÉĻXÅ«źĪ
ܽXÅ«éĄįȢŷ©
»źšµ½¢ńÅ·EEE
385:ftHg̼³µ³ń
10/04/24 15:09:03
>>384 Āį¢B
386:ftHg̼³µ³ń
10/04/24 15:10:44
>>385
Āį¢Å·©H
WinAPI¾ĘvĮ½ĢÅEEE
387:ftHg̼³µ³ń
10/04/24 15:11:55
>>384
IPϦéĘ©A»źČOĢāč¾Č
lbg[NĢmÆĘ©AĘ©A1©ēāč¼¹
388:ftHg̼³µ³ń
10/04/24 15:12:27
>>386 URLŲŻø(pc11.2ch.net)
389:351
10/04/24 15:36:11
WCuÉstrdupŖ čÜ·BstrdupĶąÅmallocµÜ·Bi>>351Ģ(1)Éj
char *strdup(const char *s);
char* str = strdup("hogehoge");@//©mŪ·é[ĢęĢTCYĶstrdupĢØÜ©¹I
printf("%s\n", str); //Ģį
free(str);@//freeŖKv~
ÆĢ±Ęšs¤my_strdupšģé±ĘąÅ«Ü·Bmy_strdupĶąÅmallocµÜ¹ńBi>>351Ģ(2)Éj
void my_strdup(const char* src, char* dst, int size);
char str[100];@//©Rs[·é¶ńęčå«ČTCYĢ[ŖKv~
my_strdup("hogehoge", str, sizeof(str));
printf("%s\n", str); //Ģį
//freeĶKvČ¢I
iɱj
390:351
10/04/24 15:37:17
i>>389̱«j
ymy_strdupĢbgz
strdupĶAąÅmallocš·é½ßAÄŃoµ½ćAKøfreeŖKvÉČčÜ·B
źūAmy_strdupČēA©®ĻšųÉn¹éĢÅAKøµąfreeĶKv čܹńB
±Ģ_ÅĶAmy_strdupĢūŖÖÅ·B±źŖmy_strdupĢbgÅ·B
ystrdupĢbgz
µ©µAmy_strdupÅĶA¶ńSĢšRs[µ½¢źA
³Ģ¶ńęčąå«ČTCYĢ[Ģęšn³ČÆźĪA¶ńSĢšRs[·é±ĘŖoܹńB
±Ģ½ßAmy_srtdupšÄŃo·OÉAstrlenšg¤Čǵij̶ńĢTCYšméKvŖ čÜ·B
źūAstrdupĶąÅKvČTCYĢĢęšmalloc·éĢÅÄŃo·Oɳ̶ńĢTCYšméKvĶ čܹńB
±Ģ_ÅĶAstrdupĢūŖÖÅ·B±źŖstrdupĢbgÅ·B
ČćͶńÅĢįŵ½ŖA
\¢Ģā¼Ģf[^Ģęšµ¤Öšl¦éʫɹ
ÄŃoµ³Å[šmŪµÄn·©A é¢ĶÖĢąÅmalloc·é©A
ÉĀ¢ÄǤ¢¤ÉǤµ½ē¢¢Ģ©Ašl¦é±ĘŖÅ«é©Ęv¢Ü·B
źŹIČwjŖ źĪm轢ŷB
391:ftHg̼³µ³ń
10/04/24 16:12:35
strdup()ĢfbgŖfree()šKvĘ·é±ĘÅͳ¢
IuWFNg𶬵½ējü·éĢĶṞĘÅ é(create/destroyĢĪŖåŲ)
my_strdup()ĢbgŖ©®ĻšųÉn¹éĘ©ČńĘ©¾ĮÄ¢éŖ
©®ĻĢĢęŖ«čČ¢źā«·¦ŖKvČźAĒmŪŖKvĘČ詮Ϫn¹é±ĘĶfbgŵ©Č¢
½Ę¦ĪAWCuĢf*()ÉĀ¢Äl¦ÄŻę¤
FILEŖNXÅfopen()ŖRXgN^Afclose()ŖfXgN^A»Ģ¼Ģf*()ÖŖFILECX^XÉĪ·ébZ[WĘl¦źĪAf*()QĶįČIuWFNgwüšµÄ¢éĘ©ÓßÅ«é
±±ÅAźĀĢwj𦻤
éIuWFNg𶬵bZ[Wščjü¹ę
foo_t *foo;
foo = create_foo();
do_something_foo(foo);
destroy_foo(foo);
Äo³Ŗ¶¬ĘjüšĪɵÄs¤ĢŖĒ¢
±ĢÖWĶAstrupÅąmy_strdupÅąÆ¶±ĘÉČé
char *s = strdup(foo); /* create */
(void)s; /* do something */
free(s); /* destory */
char *t = malloc(bar); /* create */
my_strdup(foo, t, bar); /* do something */
free(t); /* destory */
my_strdup()Ŗ\[XĘfXgŖtĢmemcpy()ݽ¢ÅCæŖ«¢Ę¾ĮÄØeXg
392:351
10/04/24 16:38:53
>>391
> strdup()ĢfbgŖfree()šKvĘ·é±ĘÅͳ¢
> IuWFNg𶬵½ējü·éĢĶṞĘÅ é(create/destroyĢĪŖåŲ)
m©ÉṞĘÅ·BṞĘÅ·ĢÅA»ĢRĢ±ĘšYź½źA[ČoOÉČéĘ¢¤å«ČfbgŖ čÜ·B
> my_strdup()ĢbgŖ©®ĻšųÉn¹éĘ©ČńĘ©¾ĮÄ¢éŖ
> ©®ĻĢĢęŖ«čČ¢źā«·¦ŖKvČźAĒmŪŖKvĘČ詮Ϫn¹é±ĘĶfbgŵ©Č¢
©®ĻÅā誢ȢźŹÅĶAćLĢ[ČoOššÆēźéĘ¢¤_Å\ŖbgŖ čÜ·B
Āč½¢±ĘĶķ©čÜ·ŖAźTÉßēźéąĢÅĶČ¢Ęv¢Ü·B
į¦ĪA>>391Ģå£ÅĶAmemcpyĶfbgµ©³¢±ĘÉČĮĵܢܷęĖH
> Äo³Ŗ¶¬ĘjüšĪɵÄs¤ĢŖĒ¢
Ē¢ĢĶķ©čÜ·BĀÜčA»źŖstrdupāA>>351Ģ(1)ĢźÅ·ęĖB
my_strdupÉmallocÅmŪµ½[Ģęš^¦Agpćfree·éĢąĒ¢Ęv¢Ü·B
Å·ŖAmy_strdupÉ©®ĻšnµÄĶ¢ÆČ¢Ę¢¤±ĘÉĶČēȢŷęĖHŗLĢę¤ČR[hĶŹÉ©źéĘv¢Ü·B
void func(const char* str)@//strĶ99¶ČŗĢ¶ń
{
@char buf[100];
@strncpy(buf, str, sizeof(buf));
@/*strÉĪ·é*/
@printf("%s\n", str);
}
±źĶAį±ÓIČįÅ·ŖA±źÉĄēøA©®ĻĢ\¢ĢāzńÖĢ|C^[šÖÉn·±ĘĶźŹIÉsķźé±ĘÅ·ęĖB
393:351
10/04/24 16:43:53
>>392Ģł³Å·B·¢Ü¹ńB
void func(const char* str)@//strĶ99¶ČŗĢ¶ń
{
@char buf[100];
@strncpy(buf, str, sizeof(buf));
@/*bufÉĪ·é*/
@printf("%s\n", buf);
}
394:ftHg̼³µ³ń
10/04/24 17:20:21
>392
oO([N)ÉČé©ē©®Ļg¤Ę©Ē꾯ärßÄéń¾ę
C¾źĶvO}C¹¾©ē»ńȱƾ¤ę¤ÉČĮ½ēAą¤C¾źÉGźČ¢ūŖK¹ÉČźéę
ŹÉmemcpy()Ŗfbgµ©Č¢__ÖĘ;ĮĢȢ
źŹ»µ½¢Ę¾ĮÄ¢éĢÉ©®Ļ}Z[Ę©¾ĮÄ¢é©ē¾ę
©®Ļ(IuWFNg)ÉεÄmempcy()(bZ[W)šĮÄ¢éŖAĢęs«āRs[ŖKvÉČĮ½Ę«ÉĒ(Vµ¢IuWFNg)ŖKvÉČéĢČēÅ©ēgĮÄØÆĪ¢¢¾ė
ĀÜčAźŹIÉ éIuWFNgÉĪ·ébZ[WĢųÉ©®ĻŖn¹é©ēĮÄšµ¢±Ęͳ¢¾ėĘ
memcpy()Ķ۵߬Ģé©ē¬µÄ¢éń¾ė¤
ŹÉAmy_strdup()É©®ĻšnµÄĶ¢ÆČ¢Ę;ĮĢȢ
ČĘą©®ĻŖn¹é±ĘŖbgÉĶČēČ¢µAźŹIÉl¦źĪ©®Ļšg¤±ĘĶfbgÉČéƾyµ½¾ÆĢ±Ę
m©ÉA©®ĻÅĢęā¶¶śŌŖ«čéĢÅ źĪ©®ĻÅą\ķČ¢
µ©µAźŹ»µÄIuWFNgŖNĀKvČƫɢĮ½±ĘÉČé
韏ÅĶiĀKvÅA©®ĻšiĀpӵȯźĪČēČ¢Aܽ 韏ÅĶjĀKvÅA©®ĻšjĀpӵȯźĪČēČ¢
¶į Ai <= j¾©ēAjĀpӵƯ΢¢āĘ·éĢ©AiŖy©Éję謳¢ź³ŹŖ½¢©ē·×«Åͳ¢
»ńȱƵȢÅAKvČÉKvȾÆpÓµÄāźĪĻŽ±Ę
źŹ»µ½¢Ģ©ļĢ»µ½¢Ģ©Ēæē©ÉµÄąē¦Č¢¾ė¤©
395:351
10/04/24 17:40:07
>>394
\¢ĢāzńšŌ·ÖšŻv·éźĢźŹIČwjšßĢܷB
>C¾źĶvO}C¹¾©ē»ńȱƾ¤ę¤ÉČĮ½ēAą¤C¾źÉGźČ¢ūŖK¹ÉČźéę
C¾źĶvO}C¹¾©ē±»AvO}[ŖA»ĢXÉKŲÉA©®Ļšn·©AmallocÅmŪµ½[šn·©šI×éę¤ÉµÄØūŖK¹Åµå¤B
Å·ĢÅA©®Ļš}Z[µÄ¢éķÆÅĶ čܹńŖA©®ĻšźŲn¹Č¢ęčĶAn¹½ūŖbgŖ éĘl¦Ü·B
ĀÜčA©®ĻšźŲn¹ČÆźĪA©®Ļšg¢½¢vO}[ÉĶg¦Ü¹ńŖ
©®ĻšźŲn¹źĪA©®Ļšg¢½¢vO}[ÉąAg¢½Č¢vO}[Éąg¦é©ēÅ·B
±źĶ\ŖbgÅ·B
Ęą©A©®Ļšn¹é©Ē¤©ĶA”ńĢæāĢ{æÅĶČA
\¢ĢāzńšŌ·ÖšŻv·éźĢźŹIČwjʵÄA
(1)ÖąÅmalloc·éĢĘA(2)ÄŃoµ¤ÅmŪµ½[ĢęšóÆęéĢĘA(3)»źČOĢū@iŖ źĪjĘAÅ
Ǥ¢¤ÉǤ·é̪Ǣ̩Ƣ¤wjŖ źĪmč½¢ĘvĮĢܷB
396:ftHg̼³µ³ń
10/04/24 17:56:48
>Ǥ¢¤ÉǤ·é̪Ǣ̩Ƣ¤wjŖ źĪmč½¢ĘvĮĢܷB
Č¢ęBāčŖ³¢ĄčD«ÉµÄęµR( L[M)m
397:351
10/04/24 18:05:31
uD«ÉµÄę¢vĘ¢¤ĢĶAĮÉīŖČ¢ĢÅ»ĢśĢCŖÅĒæē©ÉßéĘ¢¤±ĘÅ·ęĖB
»¤¢¤ūjĢūą¢éĘ¢¤±ĘĶķ©čܵ½B čŖĘ¤²“¢Ü·B
»źÅĶų«±«A>>389-390É¢Ľ©ūjšØæĢūŖ¢Üµ½ēAŗŠ³¦Ä¾³¢BØč¢µÜ·B
398:ftHg̼³µ³ń
10/04/24 18:24:44
WindowsĢAPIĶAmy_strdup()ݽ¢Éi[ĢęĢAhXĘTCYš
n·C^tF[XŖ½¢Ė
ÅAWindowsnĢvO}Ķ»¤¢¤ÖšĀé±ĘŖ½¢Ė
³ļ¾ÆĒüµČ¢ęĖ
p^ĶČ¢ūŖ¢¢
399:ftHg̼³µ³ń
10/04/24 18:38:23
>>389
Ęč ¦øAstrdupĶįʵÄK¶įČ¢ķČBŚIŖį¤©ēB
PÉiÅåĢj·³ŖŖ©ĮÄ¢é¶ńĢRs[Ķ
strcpyČčstrncpyČčšg¤B
źŹ_žĮÄAKR«ŖČ¢źAmalloc͵ȢB
·éźĶAÅĶ
Em۷׫TCYŖ©ķé
EXR[všz¦éKvŖ é
¼ĢP[XĶvO}ĢręÅ
R[hšVvÉ·é½ßÉg¤B
Eųšøē·
EKvČĻšøē·
EC^[tFCXĢźŹ»
ČĒČĒB
ĒÉ©MŖČ¢ČēāßĘ«B
½¾C}hLA»±É©MŖÄČ¢Čē
CČńÄgķČ¢B
tɾ¦ĪA»ĢöxĶK{ČķÆÅA
¾©ēuD«É·źĪĒ¢vĮÄÓ©ŖoÄéB
400:ftHg̼³µ³ń
10/04/24 19:25:00
>351
¶¬ĘšśšĪɵėĮÄĢĶAī{ūjʵĹę¢Ęv¤B
ęĮÄAstrdupĢę¤ČÖĶAÅ«źĪg¢½Č¢hB
strdupͶ¬ĘšśĢŖķČČéB
>392
>> Äo³Ŗ¶¬ĘjüšĪɵÄs¤ĢŖĒ¢
>Ē¢ĢĶķ©čÜ·BĀÜčA»źŖstrdupāA>>351Ģ(1)ĢźÅ·ęĖB
±źt¾ęĖBstrdupšg¤ĘmallocŖ©¦Č¢ĢÉfreeµČæįČēČ¢B
strdupĶWÖ¾©ēܵ¾ÆĒAfunc0, func2, func4ŖŌ·|C^Ķ
freeµÄĖAĘ©¾ĘāĮÄēźČ¢B
āÆÉstrdupŖuTCYšCɵČÄę¢v±ĘŖØCÉüčĢ椾ŖA ÜÅąĄųŖCstringÅ éź¾ÆB
±źĶ©®Ļ©Aq[vĢę©AĆIĻ©ÉͳÖWB
strnÖĶAI[¶Ŗ éOńĘ¢¤§ĄŖ éB
ÄŃoµ¤ŖĢęšpÓ·éźĶARÄŃoµ¤ÅTCYŖķ©ĮÄ¢éĶøČĢÅA
»ĢƫɳŹÉĢęšpӵȯźĪ梾ÆÅµåB
401:ftHg̼³µ³ń
10/04/24 19:32:16
}ɬźŖĮ¬µÄÄ¢½B
402:351
10/04/24 19:32:36
>>399
> źŹ_žĮÄAKR«ŖČ¢źAmalloc͵ȢB
> ·éźĶAÅĶ
> Em۷׫TCYŖ©ķé
> EXR[všz¦éKvŖ é
±źÉĶÆÓÅ·B
ĀlIÉĶ©®ĻÅĻŽźĶmallocĶgķČ¢ę¤ÉµÄ¢Ü·B
> R[hšVvÉ·é½ßÉg¤B
> Eųšøē·
> EKvČĻšøē·
> EC^[tFCXĢźŹ»
±źĶAVvÉČéĢÅ źĪAVvɵ½Ł¤Ŗ¢¢Ę¢¤±ĘÅ·ĖB
ĀÜčA>>351Ģ(1)ŖĀ\Å źĪAķÉ(1)ɵėĘ¢¤±ĘÅ·ĖB
ūjĢźĀʵÄQlɳ¹Ä¢½¾«Ü·B
403:ftHg̼³µ³ń
10/04/24 19:34:03
ETCYŖåČź
Ŗ²ÆÄéČ
404:351
10/04/24 19:45:44
>>400
>¶¬ĘšśšĪɵėĮÄĢĶAī{ūjʵĹę¢Ęv¤B
>ęĮÄAstrdupĢę¤ČÖĶAÅ«źĪg¢½Č¢hB
ĀlIÉĶstrdupĶg¢Ü¹ńŖA
strdupąstrdup-freeŶ¬ĘšśĢĪÉČĮÄ¢éĢÅāčČ¢Ęv¢Ü·B
inĪ1ĢĪČĢÅį±įa“Ķ čÜ·ŖBj
>±źt¾ęĖBstrdupšg¤ĘmallocŖ©¦Č¢ĢÉfreeµČæįČēČ¢B
¢¢¦AÖĢÅmallocšs¤Ę¢¤_ÅAstrdupĘ>>351Ģ(1)ĶÆ¶Å·B
create_my_struct()ÉĪ·édelete_my_struct()ĶAstrdup()ÉĪ·éfree()Å·B
405:ftHg̼³µ³ń
10/04/24 19:52:13
strdupĮļOŖCÉüēČ¢ń¶įČ¢Ģ
"alloc" šÜńÅČ¢©ē
“ĶŹÉĒ¤Åą¢¢Ęv¤ÆĒ
406:ftHg̼³µ³ń
10/04/24 20:00:01
ÖĢĄĢŖ¢ÄČ¢©ēA½ĘྦȢĖ
407:ftHg̼³µ³ń
10/04/24 21:35:25
>>398
揯·šŪµĀĀ ver į¢šzū·éź÷ĢōČŹą éĖ
APIšĄ·éŪun³ź½»²½Ž©ēĒĢver ČĢ©ŽEŖņÅ«év
408:ftHg̼³µ³ń
10/04/24 21:57:07
GDI+šg¤½ßÉĶǤ·źĪ¢¢Å·©H
VC2008Å·B
409:ftHg̼³µ³ń
10/04/24 21:57:40
揯·š·éĘ¢¤±ĘĶA³ĢÖ©ēųĶĻ»ŖČ¢Ę¢¤±Ę¾ėB
³ĢÖ©ēĻ»ŖĻ»ŖČ¢Ę¢¤±ĘĶA³ĢÖąAhXĘTCYšĮÄ¢½Ę¢¤±ĘÅ ĮÄ
ĀÜč³X é̾©ēź÷ĢōÅͳ¢ń¶įČ¢ĢB
410:ftHg̼³µ³ń
10/04/24 22:07:16
>>408
#include <gdiplus.h>
#pragma comment(lib, "gdiplus")
411:ftHg̼³µ³ń
10/04/24 22:10:20
>>410
VC++̼ÉĮɽą¢ēȢƢ¤±ĘÅ·ĖB
æāɱ½¦Ä¢½¾« čŖĘ¤²“¢Ü·B
412:ftHg̼³µ³ń
10/04/24 22:11:41
VC++EEgĮÄéČēPlatformSDKŖ¢éń¶į
413:ftHg̼³µ³ń
10/04/24 22:14:01
įŖ½Ü½Ü©ąµźČ¢ÆĒAmy_strdupšg¤ē¢Čēstrncpyšg¤ęĖB
bšß·ĘAallocĘfreeĶÆ¶C[É éĢŖŖ©čā·¢Ęv¤ęB
414:351
10/04/24 22:26:58
>>413
> bšß·ĘAallocĘfreeĶÆ¶C[É éĢŖŖ©čā·¢Ęv¤ęB
»źĶ»ĢĘØč¾Ęv¢Ü·B
>>351Ģ(1)(2)ʹɻĢūjÉīâĢܷB
(1)ĢźĶ©OÅalloc-freešs¢A(2)ĢźĶOEćʵÄKvČźĢŻalloc-freešs¢Ü·B
”ńĢæāĢļ|Ķ»±ÅĶČA
\¢ĢāzńšŌ·ÖšŻv·éźĢźŹIČwjšmč½¢ĢÅ·B
y[WÅVX\¦XbhĢõŽXźbčĢj
[XØÜ©¹Xg„IvVš\¦ÉĀŌµ2ch
4990śOÉXV/245 KB
S:undef