CŸêÈçŽÉ·¯i ..
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»ÌṞÆð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
415:ftHgÌŒ³µ³ñ
10/04/24 22:42:53
>>351
ŽÍAis-aÆlŠœûª©RÈÌ©has-aÆlŠœûª©RÈ̩Ū¯éB
ª©éÆÍv€ª(1)Íis-aÌêÅA(2)Íhas-aÌêB
ÆA©®Ïðgp·é©AAP[g·é©ÍA
vO}ªg¢œ¢©g¢œÈ¢©ÅlŠéÌÅÍÈAgpprÅlŠé׫B
416:ftHgÌŒ³µ³ñ
10/04/24 22:45:55
> (1)ÌfbgÍÄÑoµ³ÅüꜢ[Ìæª éêAcreateµœ\¢ÌðRs[·éKvª éB
üêœ¢Ìæª éêÍinitÌp[^Éàœ¹êÎÇ¢ÌÅÍH
> (2)ÌfbgÍÄÑoµ³ÅinitðÄÔOÉ\¢ÌÌ嫳ðmÁĢȯê΢¯È¢B
my_struct *p = (my_struct *)malloc(sizeof(my_struct));
Å͟ߟƢ€±ÆH
íÉÄÎȯêÎÈçÈ¢releaseð쬷éÌÅ êÎAíÉinitÌÅalloc·ê΢¢Æv€B
»€ÅÈ¢ÌÈçA\¢Ì{ÌÍpÒªalloc-free·ê΢¢Æv€BÆ¢€©A»€µÄéB
417:351
10/04/24 23:00:41
>>415
ÈéÙÇB»ÌwjÍŸõÅ·ËB[ŸÅ·B
èªÆ€²Ž¢Ü·B
>>416
>> (1)ÌfbgÍÄÑoµ³ÅüꜢ[Ìæª éêAcreateµœ\¢ÌðRs[·éKvª éB
>üêœ¢Ìæª éêÍinitÌp[^Éàœ¹êÎÇ¢ÌÅÍH
ÂÜèAíÉ>>351Ì(2)É·é̪ǢƢ€±ÆÅµå€©H
>> (2)ÌfbgÍÄÑoµ³ÅinitðÄÔOÉ\¢ÌÌ嫳ðmÁĢȯê΢¯È¢B
>my_struct *p = (my_struct *)malloc(sizeof(my_struct));
>Å͟ߟƢ€±ÆH
Í¢A_Å·B
struct my_structÍÂÏ·zñÌo[dataðÁÄ¢éÌÅ»ÌTCYªœßÉ[ðmÛµÈÄÍ¢¯Ü¹ñB
418:ftHgÌŒ³µ³ñ
10/04/24 23:19:22
üêœ¢Ìæðnµœ¢±ÆÉ¢Ä
(2)ÌinitÌp[^Éœ¹ÄࢢµA(1)ÌcreateÌp[^Éœ¹ÄࢢB
ÂÏÌTCYðíÉp[^Ån·ÌÅ êÎAÄѳŻÌTCYðmÛ·é±ÆÍ
\ªÂ\Èñ¶áÈ¢ÌH
419:ftHgÌŒ³µ³ñ
10/04/24 23:28:12
>>409
¢â@p[^ªêÅZÜÁœ\¢Ì@ÁÄÊßÀ°ÝªÙÆñdzË
ListView Æ©@IEÌVERá¢ÅAp[^\¢ÌÌTCYªá€
Ÿª@APIivfÌÇÁÆ©jÌC^[tF[XÍsÏ
i³çÉAAPIÌÀÌÍOØÝ¹°ŒÞÈDLLàj
±€¢€±Æ
±ÌáÅÈ¢bŸÁœçœÏÝ
420:351
10/04/24 23:42:33
>>418
üêœ¢Ìæðn·Ìª(2)ÅAüêœ¢Ìæðn³žÖàÅÌæðmÛ·é̪(1)Å·B±êªè`Å·B
Å·ÌÅAüêœ¢Ìæðn·ÌÅ êÎA(2)ÉÈèÜ·B
ÜœA(1)ÌêÍAÂÏÌîñðÜßTCYîñðnµÜ¹ñB
Å·ÌÅA(1)ÌêAÄÑoµ³ÍÂÏÌîñðÜßTCYîñðÄÑo·OÉméKvÍ èܹñµA
OqÌÆšèÖàÅ[ÌæðmÛ·éÌÅA»ÌTCYðm鱯ªoÈÄàâè èܹñB
421:ftHgÌŒ³µ³ñ
10/04/24 23:58:42
>>420
üêœ¢Ìæ]XðÊÅlŠé±ÆÍūȢÌH
»€ÈêλêÍêÊIÉ\¢Ìðµ€ÌwjÆ©»€¢€ÌÆÍÊÅAÁ껳êœbÉÈÁıȢ©H
422:351
10/04/25 00:14:29
>>421
> üêœ¢Ìæ]XðÊÅlŠé±ÆÍūȢÌH
±êÍÇ€Ÿ€±ÆÅµå€©H
ÈÆàDZ©iÖà é¢ÍÖOjÅAmalloc(sizeof(struct my_struct)+data_size)Ìæ€É\¢ÌÌ[ðm۵ȯêÎÈçÈ¢ÆlŠÄ¢ÜµœB
൱êðÊÅlŠéû@ª éÈçÎAºÐ²³ŠŸ³¢B
423:ftHgÌŒ³µ³ñ
10/04/25 00:33:19
üêœ¢ÌæÁÄptr¶áÈ¢ÌH
TCYðÂÏÉ·éœßÌàÌÆÍÊŸæËB
±Ìptrð¯¶ÖÅm۷׫©AO©çn¹éæ€É·é©Æ¢€bª¬ŽÁĢ鿀ɩŠéB
424:351
10/04/25 00:41:35
>>423
>üêœ¢ÌæÁÄptr¶áÈ¢ÌH
üêœ¢ÌæÆÍA\¢Ì»ÌàÌðüêœ¢ÌæÌ±ÆÅ·B
425:400
10/04/25 00:42:10
>351 >420
Ȝ̟€1)Æ2)Ìá¢ðAc¬Å«Ä¢È©Áœ©çAc_ª®é®éñÁÄ¢œŒB
c_ÌÅ_Í
>üêœ¢Ìæðn·Ìª(2)ÅAüêœ¢Ìæðn³žÖàÅÌæðmÛ·é̪(1)Å·B±êªè`Å·B
Æ¢€±ÆŸËB
»€ÅÅ éÈçÎ
>(1)ÌêÍAÂÏÌîñðÜßTCYîñðnµÜ¹ñB
±êͳB
1)ÌÀ»áƵÄstrdupð°Ä¢éÌÈçAstrnÍI[¶ñt«Æ¢€§Àð^Šé±ÆÅA
ÔÚIÉTCYîñð^ŠÄ¢éB
>404
>¢¢ŠAÖÌÅmallocðs€Æ¢€_ÅAstrdupÆ>>351Ì(1)ͯ¶Å·B
Éͯ¶ÉÍ©ŠÈ¢ÈB
malloc-free, new-delete, new[]-delete, create_my_struct-delete_my_struct
ÍÎÉ©ŠéB
Ÿ¯ÇÖàÅmalloc·éhogeª 鯵Ähoge-freeÍÎÉÍ©ŠÈ¢B
»€¢€±ÆÉÓµÄR[fBOµœÈ¢B
Ÿ©çstrdupg€ç¢ÈçAmallocµÄstrcpyµÄAfree·éB
426:351
10/04/25 00:56:57
>>425
> >(1)ÌêÍAÂÏÌîñðÜßTCYîñðnµÜ¹ñB
> ±êͳB
¢¢ŠB³ÅÍ èܹñB
áŠÎAÖàÅrecv()ðgÁÄlbg[N©çf[^ðóM·éêÈÇA𮹵ÄßÄf[^ÌTCYªmè·é±Æª èÜ·B
»Ìæ€ÈêAÖðÄÑo·OÉÍ»ÌTCYͪ©èܹñªAÖàÅÍrealloc·éÈèµÄKØÈTCYÌ[ðmÛ·é±ÆªÅ«Ü·B
µœªÁÄAÂ\Å·B
>Éͯ¶ÉÍ©ŠÈ¢ÈB
±êÍÖŒªKØÅÍȢƀ±ÆÅµå€©H
»€Å êÎÁÉÙ_Í èܹñBlÌŽoÈÌÅ»€©ŠÈ¢lª¢é±ÆÍdûª³¢Æv¢Ü·B
»€¢€_ÅÍAàAnew-deleteÆ¢€gÝí¹ªŒÌÆµÄ ÜèKØÅÈ¢ÆvÁĢܷB
ª¯¶ŸÆ¢ÁœÌÍA@\ƵÄÌΩçÅ·B
427:ftHgÌŒ³µ³ñ
10/04/25 01:52:31
>>426
> áŠÎAÖàÅrecv()ðgÁÄlbg[N©çf[^ðóM·éêÈÇA
> 𮹵ÄßÄf[^ÌTCYªmè·é±Æª èÜ·B
>»Ìæ€ÈêAÖðÄÑo·OÉÍ»ÌTCYͪ©èܹñªA
>ÖàÅÍrealloc·éÈèµÄKØÈTCYÌ[ðmÛ·é±ÆªÅ«Ü·B
Ⱥ@recv() ª»€¢€¢èÉÈÁĢȢ̩H@ðzµÄê
ãLÌ\¢ŸÆA¶¬/ÁÅÌüêq\¢ªÛµï¢ñŸæË@
428:351
10/04/25 01:59:41
>>427
> Ⱥ@recv() ª»€¢€¢èÉÈÁĢȢ̩H@ðzµÄê
œÌœßÉ»Ìzð·éKvª éÌŵ倩H
ÚIªæí©èܹñB
429:ftHgÌŒ³µ³ñ
10/04/25 03:25:24
>>424
ÈçÊéÛÌÆ«Ÿ¯mÛ·éæ€Éµœç¢¢ñÅÈ¢©ÈB
430:ftHgÌŒ³µ³ñ
10/04/25 03:27:29
>>425
€[ñAstrdup-freeàÎÉ©ŠÈ¢æ
»Ì_²Èçstrdup̶ÝðÛèµÄ¢¢Æv€ñŸB»µÄ»êÍAŸÆŽÍv€B
431:ftHgÌŒ³µ³ñ
10/04/25 03:33:04
ÁÄÅãÌsÇñÅÈ©ÁœBÜÁœàÁÄ»ÌÆšèÅ ÁÄAÈñÄ¢€©²ßñB
¿ÈÝÉnew[]-deleteÍnew[]-delete[]ÌÔᢟæÈH
>>426
> lÌŽoÈÌÅ»€©ŠÈ¢lª¢é±ÆÍdûª³¢Æv¢Ü·B
Èñ©œªÇÝáŠÄ¢é¯êÇA
create_my_structÌæ€ÈÖð©œêA¯CuÉdelete_my_structÌæ€ÈÖª êÎ
vO}ÍÓ𥀪AȯêÎÁÉœàµÈÄÇ¢(freeðg€KvªÈ¢)ÆvÁĵ܀NZª éB
»€¢€Ó¡ÅAhoge-freeªÎÉ©ŠÈ¢Æ¢€bŸæ
432:>425
10/04/25 08:44:44
>431
>¿ÈÝÉnew[]-deleteÍnew[]-delete[]ÌÔᢟæÈH
·ÝܹñB^Cv~XBÓµœÂàèŸÁœÌÉAú C++gíÈ¢šÅA²eÍŸ³¢B
>426
ŒÌlÆÍA¯¶ŽoÝœ¢Ÿ¯ÇAstrdup-freeÍ\[XÌmÛÆðúÌxª ÁĢȢA
CÈR[fBOX^CŸÁıÆBmallocµÄ¢éxªAêiᢩçB
ŒOÌâèÅÍÈ¢B
œŸAWÖÆ¢€Ó¡ÅMMÌeÍÍB
R[fBOX^CðìÅ«é§êÈçAANSIÉÜÜêÈ¢©çÖ~Ƶœ¢ç¢B
Û·éB
à¿ëñ»€¢€\¢ªæêÈ¢êÍA èŸéB
Ÿ¯ÇuêÊIÉÍv\[XÌmÛÆðúÌÎÍA»ëÁÄ¢éûªæ¢B
433:ftHgÌŒ³µ³ñ
10/04/25 09:22:07
>>432
¡©çŸ¯ÇAxí¹éÌÁÄKv©H
Ç¿ç©ÆŸ€ÆAAP[gÆ[XªgÝí¹ÉÈÁÄÈ¢±ÆÌûªâè¶áÈ¢©H
strdupÉεÄAstrdup_free()ª êÎÇ¢Ÿ¯ÅA
g€ûÍA»ÌgÌÀÍâíÈ¢ÁÄ̪³ðÈCª·éªcH
v·éÉA éIuWFNgÉεÄÌnewª éÈçA
»ÌIuWFNgÉηédeleteðpÓµÄA»êðgŠÁÄŸ¯ÅA
gÝí¹ðÔáŠÈ¯êÎAàªÇ€ÈÁÄæ€ªAâèÉÈçÈ¢Æv€ªc
434:ftHgÌŒ³µ³ñ
10/04/25 09:41:31
¯¶¡©çŸ¯Ç
fXgN^ª³¢e¿ÍXR[vŸ¯¶áÈ\¢ÌE€pÌÌÉÜÅe¿·éóÅ
üêšÌKwÉsxêpalloc/freeðpÓ·é̪Ó[¢cf[^æèµ¢ûŸÆšà€æ
435:ftHgÌŒ³µ³ñ
10/04/25 10:05:18
ðmÛµÄÔ·ÖÍìéÈÁÄb©H
mÛ·éÌTCYðOÉæŸÅ«È¢êÍÇ€·ñÌÁÄbŸÈ
436:ftHgÌŒ³µ³ñ
10/04/25 10:14:03
êpreallocðpӷ韯¶áÈ¢ÌH
437:ftHgÌŒ³µ³ñ
10/04/25 10:23:15
Æè Šž malloc µÄA»Ì|C^ÌAhXðnµÄA
ÖàÅ realloc µÄàç€Æ©H
438:ftHgÌŒ³µ³ñ
10/04/25 10:30:07
>>437
ª¯àª©çžmalloc()·éÊÈçANULLgÁÄrealloc()ÌûªÜµ
439:ftHgÌŒ³µ³ñ
10/04/25 10:35:23
»êŸÆ malloc/free ÌΪÆêÈ¢ÁÄå£Èñ¶áÈ¢Ì
440:ftHgÌŒ³µ³ñ
10/04/25 10:43:30
>>439
KvÈÌÍC++ÅŸ€newÆdeleteÉηéàÌÅ ÁÄ
mallocÆfreeÅÍÈ¢Æv€ÌŸªH
441:432
10/04/25 10:45:57
>433
>strdupÉεÄAstrdup_free()ª êÎÇ¢Ÿ¯ÅA
»êªxðí¹éÁıÆB
strdupÌÅmallocµÄ¢êÎAstrdup_freeÅÓCàÁÄ»êððú·éûªAR[hãÅ
\[XoXÌmFªÅ«éB
>gÝí¹ðÔáŠÈ¯êÎAàªÇ€ÈÁÄæ€ªAâèÉÈçÈ¢Æv€ªc
àðCɵœÈ¢©çA\[XÇÌÓCxðí¹œ¢ÁıÆB
>435
>mÛ·éÌTCYðOÉæŸÅ«È¢êÍÇ€·ñÌÁÄbŸÈ
KžµàA¯¶xÅ»ëŠçêÈ¢©àµêÈ¢BÅàAåïÍÝvªs¯ÄÈ¢Ÿ¯B
µbðßµÄ>432Å
uŒOÌâèÅÍÈ¢vÆ¢œ¯ÇA\[XÇxÌbèÅ ÁÄAŒOÌbÅÍȢƢ€¢ÝÅ èA
lÔªR[hð¢Ä¢éÈãA\[XÇxͯÊqÅF¯µÄ¢éB
]ÁÄA\[XÇxðÓ¯µÄ¢êÎAŒOເÈéÍžB
R[hãÅŒOÌoXªæêĢȢêAÝvð^Áœûªæ¢B
442:441
10/04/25 11:00:58
>426
>> >(1)ÌêÍAÂÏÌîñðÜßTCYîñðnµÜ¹ñB
>> ±êͳB
>¢¢ŠB³ÅÍ èܹñB
>áŠÎAÖàÅrecv()ðgÁÄlbg[N©çf[^ðóM·éêÈÇA𮹵ÄßÄf[^ÌTCYªmè·é±Æª èÜ·B
OK. ÈœÆÅÍA_ÌxªáÁÄ¢œB
Ì_ÍOÉTCYªí©çÈ¢êàAÆè Šžobt@ðpӵĚ¢ÄA
ÇñÅÝÈ¢±ÆÉÍmèæ€ªÈ¢AÆ¢€Ó¡ŸÁœÌÅ·Brecv»ÌàÌÌ
C[Å·BÇñÅÝœ ÆÍTCYªí©éAÆ¢€ÌÍ»€Å·ËB
c_Í ÜÅàêÊ_Å·BÂÊÅÍzIÈÀªÅ«È¢©àµêܹñB
]kÅ·ªAbZ[W[vÌÈçÎêÊIÉÍAºLÌæ€ÉÆv¢Ü·B
[R[hÅ·B
for (;;) {
@recvMsg(pMsg);
@/* bZ[Wɶœ */
@freeMsg(pMsg);
}
±êÍbZ[Wðó¯éƱëÆAÅãÉðú·éƱëÅ\[XÇxð
»ëŠÄ¢Ü·B
443:ftHgÌŒ³µ³ñ
10/04/25 11:07:19
v·éÉRXgN^ÆfXgN^ðpÓ·éÝœ¢È޶ɷ׫AÆ¢€±ÆËH
Ü »Ìå£Íª©çñÅà³¢
444:ftHgÌŒ³µ³ñ
10/04/25 11:10:13
>>441
>>strdupÉεÄAstrdup_free()ª êÎÇ¢Ÿ¯ÅA
>»êªxðí¹éÁıÆB
œ©Ó}ªá€Cª·éB
strdup()àÅmalloc()ðÄñÅæ€ªA³çÉAstrdup()ÅÊÌÖðÄñÅ
»ÌÅAmalloc()ðÄñÅæ€ªAŽÍCɵȢÁÄbŸªÁÄéH
strdup_free()ÉÖµÄàAç·ÉÈéÆª©ÁÄÄàÀµÄ~µÆv€ªA
Å«({ÉÅ«Ÿª)ÍdefineÌè`·éŸ¯Åà\íÈ¢ÆvÁÄé¯Ç¯¶H
445:351
10/04/25 12:24:26
>>442
>c_Í ÜÅàêÊ_Å·BÂÊÅÍzIÈÀªÅ«È¢©àµêܹñB
Í¢B»ÌÆšèÅ·B
Å·ªA»ÌºÌ[R[hÍ>>351Ì¿âÌÓ}ð\µÄ¢Ü¹ñB
>>351Ì¿âÌÓ}ÍA
recvMsg(), freeMsg()ðg€Öðì鿀ÈêðÜßÄA
êÊIÉ
EÖ©ç\¢ÌðÔ·Kvª éêAœ©îâèΪ éÌ©ðm蜢B
E±€¢€Éͱ€·êÎǢƢ€wjª êÎm蜢B
Æ¢€±ÆÅ·B
recv()ÆrecvMsg()-freeMsg()ÌÇ¿çªêÊI©Æ¢€c_Í¡ñÌ¿âÌÅ͵ĢܹñB
446:ftHgÌŒ³µ³ñ
10/04/25 12:29:35
>>445
\¢Ì©ÌðÔ·Ÿ¯Èç free() Í¢çÈ¢B
Åà >>351 ÌšèÉ ªÁÄ¢é\¢ÌÍAoÉ malloc() ÅŸœ|C^ªÍ¢ÁÄ¢éÌÅA
R »Ì|C^ð free() ·éKvª éB
êʻƢ€ªAãḺƟ¯Ó·êÎ OK ÈÌÅÍB
447:ftHgÌŒ³µ³ñ
10/04/25 12:30:02
>>351ŽÈç(1)ŸÈB
³çÉAiI[o[[hÅ«éÈçAC++È篌Åj
void delete_my_struct(struct my_struct **md) {
@delete_my_struct(*md);
@*md = 0;
}
Æ·ç·éB
448:ftHgÌŒ³µ³ñ
10/04/25 12:32:34
>>447
CÅI[o[[hÅ«é«ÈñÄ éÌ©H
449:351
10/04/25 12:36:38
>>446
ÂÜèA\¢ÌàÌ㟯ðÖÅsŠÆ¢€±ÆÈÌÅAíÉ>>351Ì(2)ªÇ¢Æ¢€±ÆÅ·ËB
>>447
Ç€¢€êA>>351Ì(1)ªÇ¢Å·©H
îª êγŠÄŸ³¢B
»êÆàAíÉ>>351Ì(1)ªÇ¢Åµå€©H
450:ftHgÌŒ³µ³ñ
10/04/25 12:51:51
>>448
¢Á¯ËBCXŸÁœBC/C++©ÆvÁÄœB
>>449
îàœàA(2)ÍŽÉÆÁÄÏGB
ÄÑoµ³ÅmallocÈèµÄAinit_my_structÄñÅA
vçÈÈÁœçrelease_my_structÄñÅAfreeÄÔB
ÄÑoµñªœ¢BÄÑYêéÌà|¢B
(1)Èçcreate_my_structŶ¬Æú»ð¯És¢A
delete_my_structÅãÐt¯Æíð¯És€B
ÄÑoµñªÈ¢B]vÈCðgíÈÄÇ¢B
create - deleteÌÎðª©ÁÄgŠÎÇ¢Ÿ¯B
C++ɵœÁÄRXgN^ÈOÉA
newãÉinit()ÄÑoµðv·éÝvà éªA
¯¶RÅŽÍ»€¢€Ì¢B
\bhÔAÖÔÉÄÑoµÌ˶ÖWª éÆg¢É¢B
451:ftHgÌŒ³µ³ñ
10/04/25 13:33:21
>>351 Í\ÁÄ¿áñŸ©çAÏŒÞÚœÖ~ËiOoOjÉ
452:ftHgÌŒ³µ³ñ
10/04/25 13:54:52
>>351ÍíÉ(1)Å¢¢æB
œŸµ\¢ÌÌoÉANZXūȢæ€ÉJvZ»µœÙ€ª¢¢B
wb_É
@ struct my_struct* create_my_struct(int param);
@ void delete_my_struct(struct my_struct* md);
@ »ÌŒmy_structðì·éÖÌvg^CvéŸ
ð¢ÄA\[XÌÙ€É
@ struct my_struct {
@ @int size;
@ @void *ptr;
@ @int data[];
@ };
@ ÖÌè`
ðB
453:351
10/04/25 18:27:17
>>450
> îàœàA(2)ÍŽÉÆÁÄÏGB
>>452
> >>351ÍíÉ(1)Å¢¢æB
èªÆ€²Ž¢Ü·Bî{Í(1)Æ¢€±ÆÅ·ËB
ÅÍAÄÑoµ³Å\¢Ìði[µœ¢êªÜÁÄ¢éêÍÇ€·ê΢¢ÆvíêÜ·©B
>>351Ì(1)ÌêÍA
ÄÑoµ³Å\¢ÌÌcretateðÀsµAÄÑoµ³Å»ÌÊð\¢Ìði[µœ¢êÉRs[µÈ¯êÎÈèܹñB
>>351Ì(2)ÌêÍA
ÄÑoµ³Å\¢ÌÌinitÉi[µœ¢êðwèµÄÀs·êÎAÊÆµÄi[µœ¢êÉ\¢Ìªi[³êéÌÅAÄÑoµ³ÅÍüßÄRs[·éKvÍ èܹñB
±Ì_ÅAâÍè(2)ÍÌÄØêܹñB
ãÊÅÇ€gíêé©í©çÈ¢ÖðÝv·éêÍAâÍè(1)(2)ÌŒûðpÓµœÙ€ª¢¢Åµå€©B
(1)(2)ÈOɀܢû@ª êÎm蜢ƱëÅ·B
454:ftHgÌŒ³µ³ñ
10/04/25 18:51:27
>>453
©ªÅŠoµÄé¶áÈ¢©BÜŸœ©¢ÁÄéÌH
455:351
10/04/25 18:53:31
>>454
Í¢B
>>453ÌêÔÅãÌsɫܵœB
456:ftHgÌŒ³µ³ñ
10/04/25 19:30:23
>>455
Ö¥B»±ÇñÅàŽÉ͜ɢÁÄéÌ©í©ñÈ¢âB
457:ftHgÌŒ³µ³ñ
10/04/25 19:34:52
>>351
œÌœßÉi[µœ¢êÁÄ̪KvÈÌ©í©çñªAÏÈ«û·éæèÍ
šÆÈµRs[µœÙ€ª¢¢©àËB
458:351
10/04/25 19:43:23
>>457
i[µœ¢êªÜÁÄ¢é󵯢€ÌÍA
áŠÎAºLÌæ€ÈR[obNnh[ðÀ·éêÉAøÉi[·é[Ìæðn³ê鿀ÈêÅ·B
int (*some_callback_handler)(char* buf, int buf_size);
ptH[}Xª»êÙÇv³êÈ¢êÊÅÍm©ÉRs[·êÎðÈÌÅ·ªA
»€ÅÍÈ¢êà éÌÅARs[ÌñÍžç¹çê鿀É൜¢ÌÅ·B
459:ftHgÌŒ³µ³ñ
10/04/25 19:56:46
𩵢ÈAøªk|C^©Ç€©Å»f·ê΢¢æÁÄ¢€ÌÍÇ€µ¿áÁœñŸëB
reallocÝœ¢ÈŽ¶Æ¢ŠÎ¢¢©È
460:ftHgÌŒ³µ³ñ
10/04/25 21:13:28
>>458
get_my_structÖðìÁÄ|C^ðÔµÄA»Ì|C^ðgŠÎ¢¢ÌÅÍB
461:351
10/04/25 21:24:14
>>460
\¢Ìði[µœ¢|C^ðmÁÄ¢éÌÍÄÑoµ€ÈÌÅ
get_my_structÖðìÁÄàdûȢŷæËH
462:ftHgÌŒ³µ³ñ
10/04/25 23:54:00
ÜŸâÁÄñÌ©
±€¢€Ç€Åࢢ¿âÍOKEFuÝœ¢ÈSÒü¯Q&ATCgÅâê΢¢ÌÉ
463:ftHgÌŒ³µ³ñ
10/04/26 00:03:24
>>462
»êª±ÌX³
464:ftHgÌŒ³µ³ñ
10/04/26 11:01:21
¢âJëA±±Í>351Ýœ¢ÉPêœÒü«¶áÈ¢B
¢Á»¬SÒXÓèÅâÁÄÙµ¢B
465:ftHgÌŒ³µ³ñ
10/04/26 13:02:05
>>464
šOª¶åêp©ÔXÉs¯Î¢¢
466:ftHgÌŒ³µ³ñ
10/04/26 22:05:24
t[`[gLÌuõvÁÄÇ€âÁÄg€àÌÈÌH
ÏÌéŸÆ¢€Ìª±€¢€ÌÅA±ÌÉg€H«
int@nurupo;
±êÍuvÅ¢¢æËH«
int@nurupo = 1
467:ftHgÌŒ³µ³ñ
10/04/26 22:14:54
int@nurupo = 1
ªõŸÈ
ÉõŠÄú»Æ¢€õðµÄ¢éí¯Ÿµ
ÏéŸÍt[`[gÌÅͩȢ±Æªœ¢
468:ftHgÌŒ³µ³ñ
10/04/26 22:52:29
ïÐÅú»Æ¯Éãü¢œç
u±ñÈ«û©œ±ÆÈ¢AŒ¹IvÆŸíêœB
469:ftHgÌŒ³µ³ñ
10/04/26 23:02:07
ú»Æ¯ÉãüÁÄÇ€âéñŸ
470:ftHgÌŒ³µ³ñ
10/04/26 23:02:55
int i;
int j = i = 0;
±€¢€â©
Ü L¢È
471:ftHgÌŒ³µ³ñ
10/04/26 23:03:11
>>469
꟪ ÁÄ\µóÈ¢ªA>>467Ýœ¢ÈâÂB
472:ftHgÌŒ³µ³ñ
10/04/26 23:06:20
uú»vÆuãüvð×µŒ³¹é׫ŸÈ
Â[©©œ±ÆÈ¢AÁÄ
473:ftHgÌŒ³µ³ñ
10/04/26 23:08:35
éŸÆ¯ÉãüÁıƩH
474:ftHgÌŒ³µ³ñ
10/04/26 23:10:00
>>466
\[XÇßÎuÔí©é±Æð¢ÄÍ¢¯È¢
æÇÜȯêÎí©çÈ¢±ÆðAVXgµÄ±»Ó¡ª é
475:ftHgÌŒ³µ³ñ
10/04/26 23:11:39
>>473
»êðú»ÆŸ€
Ü Aú»ÍãüÅÍÈ¢ªÈ
476:ftHgÌŒ³µ³ñ
10/04/26 23:26:20
ú»Íãü¶áÈ¢H
int main(void) {int x = 5; return 0; }
Èñ©ŸÆãü¶áÈ¢H
477:ftHgÌŒ³µ³ñ
10/04/26 23:34:34
¢¢ŠAú»Å·
478:ftHgÌŒ³µ³ñ
10/04/26 23:41:51
466Ÿ¯ÇAAzŸÁœÝœ¢ÅÙñƲßñB
à€µO[Oæ¶ÅTµÄéBvOÁÄïµ»€ËBB
>>474
»€¢€àÌÈÌËB
¶á wÇ©íË[æIÆ¢€Là 鯩H
479:ftHgÌŒ³µ³ñ
10/04/26 23:46:14
auto ÏÉú»Èñ© éÌ©HSãü¶áȢ̩H
»êÆàŽÌªªÃ¢Ì©H
480:ftHgÌŒ³µ³ñ
10/04/26 23:58:19
>>479
âñ¶áÈÄAÅ©ç¿áñƵœ¶@ðoŠÄ¢È¢Ÿ¯B
481:ftHgÌŒ³µ³ñ
10/04/27 00:01:05
>>480
static ÈÏÉηéú»ÍðÅ«éªAauto ÈÏÉú»Æ¢€®ìÍ éÌ©
main() {
int x; /* éŸ */
x = 1; /* ãü */
}
ðÐÆÂÉÜÆßà̪
main()
482:ftHgÌŒ³µ³ñ
10/04/27 00:01:46
int main() {
int x = 1; /* éŸú» */
}
ÆvÁÄ¢œÌŸªB
483:ftHgÌŒ³µ³ñ
10/04/27 00:03:31
²ßñȳ¢BâèÈšµB
main()
{
int x; /* éŸ */
x = 1 /* ãü */
}
ðÐÆÂÉÜÆßœà̪
main()
{
int x = 1 /* éŸ{ãü */
}
ŸÆvÁÄ¢œÌŸªAKiͱêðú»ÆÄñÅ¢éÌ©H
484:ftHgÌŒ³µ³ñ
10/04/27 00:11:39
>483
»êÍAú»qt«ÌéŸB ÜÅàéŸÅAéŸ+ãüÅÍÈ¢B
®ÆéŸÅͶ@ªæÊ³êÄ¢éB
int a[] = {1, 2, 3,};
Ưéª
int a[10];
a[] = {1, 2, 3,};
ÆÍ¯È¢ÌÍÊšŸ©çB
485:ftHgÌŒ³µ³ñ
10/04/27 00:16:06
>>483
JIS X3010 6.7.8 ú»
486:ftHgÌŒ³µ³ñ
10/04/27 01:11:59
>>481
rÅMµœÆÍvÁœªV
[߬ÄÎÁœB
487:ftHgÌŒ³µ³ñ
10/04/27 11:47:43
§änvO~OÌàÆµÄACŸêi++ÅÍÈ¢jÌrbgZð׵ĢܷB
unsigned char^ÌÏðAñiÅoµÄ8ÂÌ0/1tOƵÄg€œßÌêÔøŠÌæ¢âèûÁĜŷ©H
êÊIÉgíêéWbNƵÄÍȺÌ\bhÌæ€È޶ÅnjÅ·©H
//øsrcÌnrbgÚð0©1©Åæèo·
unsigned char getNbit(unsigned char src,unsigned char n)
{
//srcÆ2ÌnæinrbgÚŸ¯1ÌljÆ_æZµÄA0ÉÈÁœç0ðÔ·B»€ÅȯêÎ1B
if( src & (1<<n) == 0 )
{
return 0;
}
else
{
return 1;
}
}
//øsrcÌnrbgÚÉwèÌlparam(0/1)ðZbgµœlðÔ·
unsigned char setNbit(unsigned char src,unsigned char n,unsigned char param)
{
//0ðZbg·éêAsrcÆ2ÌnæÌlðœ]µœl(255-1<<n)ÆðA_æZ·é
if(param == 0)
{
return src & (255-1<<n);
}
//1ðZbg·éêAsrcÆ2Ìnæ(1<<n)ÌlÆðA_ÁZ·é
else
{
return src | (1<<n);
}
}
488:ftHgÌŒ³µ³ñ
10/04/27 11:54:37
rbgtB[h¶á ©ñÌH¶¬³êéR[hÍ¢¯Ç
489:ftHgÌŒ³µ³ñ
10/04/27 11:58:10
ñÂÚÍon/offÅÖí¯æ€º
490:ftHgÌŒ³µ³ñ
10/04/27 12:00:41
IOì·éÈçrbgtB[hgÁÄAÖÅBÁ·é
491:ftHgÌŒ³µ³ñ
10/04/27 12:15:09
(255 - 1 << n) ¶áÈÄ@~(1 << n)ÁÄ·é̪rbgZçµ¢
492:ftHgÌŒ³µ³ñ
10/04/27 12:34:18
__inline unsigned char getNbit(unsigned char src, unsigned char n) {
return src & (1 << n);
}
__inline unsigned char setNbit(unsigned char src, unsigned char n, unsigned char param) {
return src & ~(1 << n) | (!!param << n);
}
493:ftHgÌŒ³µ³ñ
10/04/27 12:39:45
return (src >> n) & 1
494:487
10/04/27 13:33:20
F³ñA èªÆ€²Ž¢Ü·B
>>490
ܳÉIO§äÌwKÅ·B
îÕÉvª8ÂæÁÄ¢ÄAwèÌIO|[g1Â(1oCg)ÉlðZbg·é±ÆÅ_/Áð§ä·éÆ¢ÁœÛèÅ·B
rbgtB[hÆ¢€Ìð²×ÄÝÜ·B
>>492
OÒÍAw赜rbgª0ÌÆ«Í0ªÔé¯êÇA1ÌÆ«Í1<<nªÔèÜ·ËB
»êÅàA±Ì\bhðg€ÛÉAu0©»€ÅÈ¢©vÆ¢€^pð·êÎǢƢ€±ÆÅ·©H
JavaÌbooleanâC#Ìbool^ɵêÄ¢éäŠA0©1©ÌßèlɱŸíçȢƢ¯È¢ÆvÁĢܵœªA
CÌí¯ŸÆ»€ÅàȢƢ€F¯ÅǢŷ©H
ãÒÍAusrc & ~(1 << n) | (!!param << n);vÌLqÌÓ¡ðÚµ³ŠÄ¢œŸ¯éÆ©èÜ·B
usrc & ~(1 << n)v̪ÜÅÍAuÆè Šžwèrbgð0É·évÆ¢€Ìͪ©èÜ·ªA
»ÌãA !!ÆÍÇ€¢€Ó¡ÌLqÈÌŵ倩B
±€¢€Zî{IÈðÉÍinlineɵœÙ€ª¬ÈÌÅ·ËBÆÄàQlÉÈèÜ·B
495:ftHgÌŒ³µ³ñ
10/04/27 13:38:56
rbgtB[hÌÀ˶̪©ç¢ÁÄ»ÌprÉÍgŠÈ¢ñ¶áÈ¢ÌH
pfBOÆ©ÔüêÖí鯩Å
496:ftHgÌŒ³µ³ñ
10/04/27 13:46:15
>>494
>>492Ì get ÌûÍwEÌÊèÅA0, 1 ÉÅè·éÈç(µœûª¢¢Ÿë€¯Ç)A
return !!(src & (1 << n));
ƵÄࢢªA»êÈç >>493 Ìûª¢¢ËB
!! Í ! ð2ñâÁÄ韯B 0Èç0A0ÈOÈç1ɵœ¢Æ«Éâéí
èiB
497:ftHgÌŒ³µ³ñ
10/04/27 14:15:09
>>487Ì»è¶AZqÌDæÊðæ²×Ư
498:ftHgÌŒ³µ³ñ
10/04/27 14:28:54
>>494
JavaÅàC#Åà0ªUÆ¢€Æ±ëÍÏíçñæB
if (3)Æ©©¯éŵå
499:ftHgÌŒ³µ³ñ
10/04/27 15:34:56
>>498 R
500:ftHgÌŒ³µ³ñ
10/04/27 15:42:12
JARO
501:ftHgÌŒ³µ³ñ
10/04/27 18:54:10
!!ÍL¢ñŸæÈ
DÝÌâèŸë€¯Ç
¿áñÆÅK»³êé©Ç€©ÍCÉÈé
502:ftHgÌŒ³µ³ñ
10/04/27 19:14:22
!!ª¢âÈç!=0ÍÇ€æH
503:ftHgÌŒ³µ³ñ
10/04/27 19:20:04
>>485
ÈéÙÇAuÃIL¯ææÔvÌÝÈçžu©®L¯ææÔvÌêÅ ÁÄàAú»Æ¢€ŸtªKp³êéÌÅ·ËB
CvgãÅÍPÈéãüÉ·¬È¢àÌÅ ÁÄàB
504:ftHgÌŒ³µ³ñ
10/04/27 19:53:57
C++ÅÁܵÄCɬê
¢ÄCÌüåÇÝIŠœñÅ·ªAÒÉÈéœßɵœçœßÉÈéKÛèÆ© èܹñ©
œÔñ Æ©ìéêGUIÆ©gíÈ¢ÆÈçÈ¢ñÅ·æËHÅ«œçqgt«Å³ŠÄêܹñ©H
505:ftHgÌŒ³µ³ñ
10/04/27 19:54:16
>>502
ŽÍî{»€µÄé
if¶ÉŒÚÍ»ê·ç©È¢¯Ç
506:ftHgÌŒ³µ³ñ
10/04/27 19:55:02
>>504
CUIÅìê鿀ÈÈPÈQ[Åàì鯢¢æ
ŽÍ¢ÂàqbgAhu[ðì鿀ɵĢé
507:ftHgÌŒ³µ³ñ
10/04/27 22:01:56
\¢ÌÌoÉANZX·é
iCXÈû@ÁÄ éH
508:ftHgÌŒ³µ³ñ
10/04/27 22:10:36
char*ÅLXgµÄA1oCgÉANZX·é
509:ftHgÌŒ³µ³ñ
10/04/27 22:14:11
oÌÊuâ^ðzñɵÄÛ¶µÄš¢Ä
»êÅ[vÅANZX
Ü Ê»ñȱÆâéÈÅFAŸª
510:ftHgÌŒ³µ³ñ
10/04/28 15:43:35
>>507
unionðg€ÌªêÔyÅãi
511:ftHgÌŒ³µ³ñ
10/04/28 16:33:51
>>510
ANZXÆ¢€ŸtÌÓ¡ªí©ÁÄÈ¢Ÿë
nÍÙÁÄê΢¢ÌÉ
512:ftHgÌŒ³µ³ñ
10/04/28 17:14:46
ANZXūȢRð³ŠÄêVË
513:ftHgÌŒ³µ³ñ
10/04/28 19:37:37
>>511
±€¢€Ž¶Å¢¯éÁµåB
typedef struct {
int a;
int b;
int c;
int d;
} hoge_t;
typedef union {
hoge_t u;
int l[4];
} chinko_t;
514:ftHgÌŒ³µ³ñ
10/04/28 19:38:41
Aint l[0] ɵƢœûªÖª¢¢ÈB
515:ftHgÌŒ³µ³ñ
10/04/28 20:07:29
ACgªCÉÈé
¯¶^ÈçÜžâèͳ¢Ÿë€ªAªêª éµÈ
516:ftHgÌŒ³µ³ñ
10/04/28 20:14:52
bgF³ŸµB
517:ftHgÌŒ³µ³ñ
10/04/28 20:16:54
>>515
»êðŸ¢oµœç»à»àunion̶ݻÌà̪|¢æÈB
>>516
NàbgÌbÈñ©µÄË[Ÿë
518:ftHgÌŒ³µ³ñ
10/04/28 20:26:35
YŠÅANZXµœ¢Ÿ¯Èç
#define STFX(N,V) switch(N){case 0:struct.a=V;break;case 1:`}
Å\ªŸµB
519:ftHgÌŒ³µ³ñ
10/04/28 21:01:43
š¢š¢¡úàÜœbÌAÍÂÜñËŠ±ÆÅàßÄéæ
520:ftHgÌŒ³µ³ñ
10/04/28 21:10:53
>>519
ŸæÈAãÍDŸêŸë€ÉVªÈC~ÍIij[ÅàµÄëÁÄÌ
521:ftHgÌŒ³µ³ñ
10/04/28 21:12:26
±êŸ©çC~ÍEEE
522:ftHgÌŒ³µ³ñ
10/04/28 21:12:59
D(Î)
523:ftHgÌŒ³µ³ñ
10/04/28 21:14:18
š¶¢³ÜªœÍFORTRANÅàgÁÄÄŸ³¢
524:ftHgÌŒ³µ³ñ
10/04/28 21:14:28
VªÁÄê©
525:ftHgÌŒ³µ³ñ
10/04/28 21:18:30
š¶¢³ÜªœÍ LISP ÅàgÁÄŸ³¢A
ñH
526:ftHgÌŒ³µ³ñ
10/04/28 21:24:39
>>523,525
·ÜñAŽÜŸ20㟪ŒûÆàïÐÅgÁÄéw
527:ftHgÌŒ³µ³ñ
10/04/28 21:32:21
LISPÍ¢ŸÉŽÍŸ©çÈBÜ WindowsAvÉÀÁÄŸ€ÈçC#Ìãªé©àµêÈ¢B͢ݟµÈ
ÅàvOÍWindowsAvŸ¯¶áÈ¢µAÂ[©DÁÄNªy³¹éñŸæ
¢EÅgíêÄéCÌåéðö·CË[Ÿë
ÆWebvO~OÌLLͱê©çà¶«cé
528:ftHgÌŒ³µ³ñ
10/04/28 21:35:21
LISPÍemacsÆ© é©çÜg€@ïÍ»±»± é©àµêñª
FORTRANðg€êÊÍÜÁœv¢©Îñ
ÌåwÅÀ±ÉgÁÄÈâÁÄÈ¢©çAà€¶@àíªñË
529:ftHgÌŒ³µ³ñ
10/04/28 21:49:20
ANZXÆ©»ñÈCM
[Èg¢ûÍʵȢµB
530:ftHgÌŒ³µ³ñ
10/04/28 22:02:10
FortranÍåwÅÍܟ©ÁÄ鯱ë é¯Ç
kÁÄemacsÌ}N碵©È¢æ
Áı€ÆµÄ[hµÄ>>528ðÇñŸ
œÔñÙÆñǯ¶àÌð©œÌÉoµœŠª^tÅÊ¢ÈÆvÁœ
531:ftHgÌŒ³µ³ñ
10/04/28 22:25:40
\¢ÌÌüêqÁÄ ÜèæÈ¢±ÆÈñŵ倩HiÝvÉâè èHj
532:ftHgÌŒ³µ³ñ
10/04/28 22:27:57
ÊÉÊ
533:m
10/04/28 23:55:51
¢ÜwZÌÛèÅ
do-while¶ðgÁÄ
P{Q{REEEÆ¢€æ€ÉlðÁZµÄ\еA
ÁZʪROOðŽŠœç\еÄ
ðI¹·éÆ¢€vOðgÝœ¢ÌÅ·ªA
i©çöÆÂ¢Ä¢¯ÈÄAæí©èܹñ
ÇÈœ©³ŠÄŸ³¢Bšè¢µÜ·
534:ftHgÌŒ³µ³ñ
10/04/28 23:57:45
>>533
±±ÍüåXÈÌÅ ÜèxȱÆÍšŠÅ«Ü¹ñB
535:m
10/04/29 00:00:38
>>534
Ç€µœç¢¢Å·©H
536:ftHgÌŒ³µ³ñ
10/04/29 00:02:05
wZÌÛèH
537:m
10/04/29 00:03:53
>>536
¢ŠêåÈñÅ·ª
SöÆÉ¢Ģ¯ÈÄÅ·ËEEE
538:ftHgÌŒ³µ³ñ
10/04/29 00:03:56
>>535
œÚØÝž(techÂ)
±¿çÖÇ€Œ
539:ftHgÌŒ³µ³ñ
10/04/29 00:04:27
#include <stdio.h>
int
main(void)
{
@ int i = 1;
@ int sum = 0;
@ do {
@ @ sum += i++;
@ } while (sum < 300);
@ printf("%d\n", sum);
@ return 0;
}
540:ftHgÌŒ³µ³ñ
10/04/29 00:04:29
»€¢€Æ«Íü¡µ¢J[ÌVsð¢ÄñoŸë€
541:m
10/04/29 00:12:06
>>539l èªÆ€²Ž¢Ü·B
QlɵĪñÎÁÄÝÜ·
542:m
10/04/29 00:14:24
>>539
sumüêÈ¢Åàūܷ©H
543:ftHgÌŒ³µ³ñ
10/04/29 00:16:16
¢ĢCͳ¢æ€Ÿ
544:ftHgÌŒ³µ³ñ
10/04/29 00:24:11
>>542 ©ªÅâêæJX
545:ftHgÌŒ³µ³ñ
10/04/29 00:52:38
>>542
#include <stdio.h>
int
main(void)
{
int i = 1;
do {
printf("%d\n", i * (i + 1) / 2);
i++;
} while (i * (i + 1) <= 600);
return 0;
}
546:ftHgÌŒ³µ³ñ
10/04/29 00:55:13
>>542
Êði[µÄšÏªKvÈí¯B
ÁZµÄ¢ÁÄA»êðDZÉ۵ĚÌHÁÄbÉÈéŵåH
Ÿ©çA±ÌêÍusumvÁÄ¢€ÏÉüêÄéB
ÊÉgoukeiÅàsÅàACŸêÌK¥É]ÁÄêÎÈñÅࢢB
547:ftHgÌŒ³µ³ñ
10/04/29 00:55:55
>>545
ãYퟯÇSÒÉͪ©èÃç¢\[XŸÈ
y[WÅVX\ŠXbhÌõÞXêbèÌj
[XšÜ©¹Xg¥IvVð\ŠÉÂÔµ2ch
4990úOÉXV/245 KB
S:undef