////////////////////////////////////////////////////////////////////
/*

    KAB-studio.h


    (C)KAB-studio 1999 - 2003 ALL RIGHTS RESERVED.
        http://www.kab-studio.biz/
        info@mail.kab-studio.biz

    MF 2003/12/08(Mon) No.235
    zMF 2680 ( Mag2 + Pubzine )
    sF ܂܂ ( URL: http://www.mag2.com/  ID: 0000012198 )
    sF Pubzine ( URL: http://www.pubzine.com/  ID: 590 )
*/
////////////////////////////////////////////////////////////////////

/*    Pubzine ǎ҂̕ - ܂܂ڍŝ˂ - iČfj      */

@{[}KWA KAB-studio.h ́u܂܂vƁu Pubzine v
Qʂ̔zMT[rX𗘗pĒĂ܂B
@̂ӂ̃T[rXA Pubzine QOOSNQXŏI
܂B̂߁A̓ȍ~A Pubzine ōwǓo^Ă
KAB-studio.h zM܂B
@ KAB-studio.h wǓo^Ƃ́A萔ł
[܂܂ KAB-studio.h o^ ]ɂčwǓo^ĂB

[ Pubzine IɂĂ̂点 ]
http://www.pubzine.com/
[ Pubzine  KAB-studio.h  ]
http://www.pubzine.com/detail.asp?id=590
[ ܂܂ KAB-studio.h o^ ]
http://www.mag2.com/m/0000012198.htm

pFԃX^ňڍsĂȂłH
`Fł͊F̃[AhX͂킩Ȃ̂ŕs\łB
@@킩ĂłB
@@Pubuzine uɈڊǂvƂƂ͂ȂłB


////////////////////////////////////////////////////////////////////
/*                QOORNPQWij̍XV                */
http://www.kab-studio.biz/index.html

EقƂ́[Pbǉ
@Ol̃zbgn[uɂV̂RǉB̊ԂɂcbR~H
[ Ol̃zbgn[u ]
http://www.kab-studio.biz/Comic/HotHerb/index.html

EV\II
@Ƃ̐V\łII
@̓oWƃnIVIBꉞNX}XۂłтƐF
ۂB
@Â͕ǎo[W͂Ƃ肠ȂłBƂŉ邩
ȂǁccB
[ \ ]
http://www.kab-studio.biz/index.html


////////////////////////////////////////////////////////////////////
/*                        储ʂȓL                        */
http://www.kab-studio.biz/nikki2/index.html

2003/11/30 (Sun)
@B Ever17 PE AT`A SHORT CIRCUIT B\`
BoWƃnIVĨc[VbgBTςBЎ߂B
T`͂̂܂ccB

2003/12/01 (Mon)
@POɋq撼oBCɂCBRɐQ\ccB̖钆
{ɕ\`܂BtfBXvCłcuc悤vBhCu
ȁBē]ERTBI

2003/12/02 (Tue)
@ߑO͋qsăR[fBOBߌ͂̃N`[󂯂ɁB
Ă܂qցBȂ񂩂̂тƁBĂcuchCuBOt
ȂƂP̂BăNX}XBxBďB󂯂܂
Bācc̓_B

2003/12/03 (Wed)
@PTԂԂɂ̋ΖnցBOւ̎dlByB
ĂƎvB͂΂ɋ߂ƎvBƂ킯Ő搶ɂȂ܂B
vXXオB Ever17 A\ƂwB

2003/12/04 (Thu)
@vXɂ̋ƖBoO񍐂APJꂽBK[bI@
ssȈzBVɏオĂcuc}`vXhCuwB傫
tfBXvCłcucB\tgɂĂԈႤB SHOCK UP!
B̘bB̂܂܌l_ɂł邩Bĕ֔B

2003/12/05 (Fri)
@tH[܂ŏIBXオŉlցBOҎOtʔ
Bd̓dbƗ̘bƂPT̗\ƁBUk@r`bɏoĂw
Biou[ȂłH

2003/12/06 (Sat)
@󂵂Ă̂тBQPP܂łƁBՂƂs`B
ăioB̋ȏIH


////////////////////////////////////////////////////////////////////
/*                         A                             */
http://www.kab-studio.biz/Novel/Fuga/index.html

@́@ll@|PQ|

wFAuĂъo܂IIx
@ԗťtƋɁAԂɂ܂΂䂫B
uMbIv
uIIv
@Sڂῂ܂BƂȂ߂āApႭ
܂܊|B
u̎ҁApAQIIv
uȁccM@AAAIIv
@̓w̘ra藎ƂB
uAwIHv
u킟Iv
@CオBĂɑSe\A@ƔC݂ɖ
B
wԂIx
wIx
@Oォ牊ԁB̂Ԃ݁AŏYƂȂB
uAAccv
uAUJIIv
@N̐ƋɁA͗ɕBcQOɕ
A쌴̊OA؁X̒ւƓB
@bł͂ȂA̎RBJĂ悤ɌāA͓VR̖
HB
uIv
uMbIv
@̒ɖ݁A㩂Ɋ|BQOl̐́AƂԂɏB
uȁccȁccv
@łÂ]钆Awr̒ɂ݂ɋꂵ݂ȂA
ȂƂc悤ƂĂB̑ɁAB
uɂ͐FXuƂ񂾁v
@Ⴊݍމ̊AтڂŌグĂB
                                                              ()


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
wccx
uccv
wccÁccx
ucc_݂v
wIIx
http://www.kab-studio.biz/index.html
_______________________________________________________________[KCM]

////////////////////////////////////////////////////////////////////
/*                       #pragma twice                            */
http://www.kab-studio.biz/Programing/PragmaTwice/index.html

@Version 12.12
\̂̃t@Cǂݏ

uÓA\̂̃ACgƃpfBOɂĐ܂v
w\̂̃oϐ 8 oCgɂȂႤA̓vWFNg
̐ݒŌ߂Aˁx
uB𓥂܂āA\̂t@CɏޏꍇɂČ
݂܂v

struct TEST_STRUCT_DOUBLE_2
{
    char m_ch;
    double m_d;
    char m_ch2;
};

void WriteStructToBinaryFile()
{
    // t@CJ܂B
    FILE *pstFile
        = fopen( "StructBinary.aaa", "wb" );
    if( !pstFile )
    {
        TRACE( "t@CJȂI\n" );
        return;
    }

    // \̂܂B
    TEST_STRUCT_DOUBLE_2 stTEST_STRUCT_DOUBLE_2;
    memset( &stTEST_STRUCT_DOUBLE_2, 0x00, sizeof( stTEST_STRUCT_DOUBLE_2 ) );
    stTEST_STRUCT_DOUBLE_2.m_ch  = 63;
    stTEST_STRUCT_DOUBLE_2.m_d   = 2.0;
    stTEST_STRUCT_DOUBLE_2.m_ch2 = 63;

    // \݂̂܂B
    fwrite
        ( &stTEST_STRUCT_DOUBLE_2
        , sizeof( stTEST_STRUCT_DOUBLE_2 )
        , 1
        , pstFile 
        );


    // t@C܂B
    fclose( pstFile );
    return;
}

u\̂͑OƓ TEST_STRUCT_DOUBLE_2 łv
w memset()  0 ɂāÂƂꂼ̕ϐɓāccH@
̑O memset()  0xAA ZbgĂȂx
u̓pfBO̕邽߂̃eXgB{͂ 
0 ̂ʁv
wm 0xAA Ăƕςˁccx
u܂ʂɓʂȗR͂Ȃ 0x00 ȊOł񂾂ǁAKv
 0x00 ̕ȁv
w̎̓t@C݂̏ˁBgĂ郉^C 
Version 12.09 ( No.232 ) Ɠˁx
uŏdvȂ̂́A sizeof( stTEST_STRUCT_DOUBLE_2 ) ̕BO
悤ɁAɂ̓pfBO̕邩v
wڂ傫Ȃ̂ɂȂĂƂˁx
uƁBŁAۂɁAACg 8 oCgɂăt@C
ނƁÂ悤ȃf[^ɂȂ܂v
woCi[[hŊJāAƁx

3F 00 00 00 00 00 00 00
00 00 00 00 00 00 00 40
3F 00 00 00 00 00 00 00

wāȂO\̂̒gƂƂقƂǓB AA  00 
ɂȂĂŁx
uA memset()  0xAA Ȃ 0x00 ZbgĂ邩ˁBłA
ꂪdvv
wǂ䂱ƁHx
u\̂̒ĝ܂܏܂ĂƂ́AACg̐ݒ莟
Ńt@C̍\ςĂƁv
wccACg 0 oCgƁAt@CpfBOȂȂ
Ԃŏ܂񂾁x
uۂɎĂ݂āv
wقBvWFNg̐ݒŕςāArhĂƁx

3F 00 00 00 00 00 00 00 40 3F

wɃpfBOȂȂccx
uȂӂɁAACg̐ݒ͎ۂ̃t@C̒gɂĂe
܂BāAx͂ǂݍł݂܂v

void ReadBinaryFiletoStruct()
{
    // t@CJ܂B
    FILE *pstFile
        = fopen( "StructBinary.aaa", "rb" );
    if( !pstFile )
    {
        TRACE( "t@CJȂI\n" );
        return;
    }

    // \̂ǂݍ݂܂B
    TEST_STRUCT_DOUBLE_2 stTEST_STRUCT_DOUBLE_2;
    fread
        ( &stTEST_STRUCT_DOUBLE_2
        , sizeof( stTEST_STRUCT_DOUBLE_2 )
        , 1
        , pstFile 
        );
    TRACE( "%d\n", stTEST_STRUCT_DOUBLE_2.m_ch  );
    TRACE( "%.20f\n", stTEST_STRUCT_DOUBLE_2.m_d   );
    TRACE( "%d\n", stTEST_STRUCT_DOUBLE_2.m_ch2 );
    // 63
    // 2.00000000000000000000
    // 63

    // t@C܂B
    fclose( pstFile );
    return;
}

wςƌʂx
u^C܂ł̂ƓɖȂˁv
wBrhĎsI@Aƃf[^ĂIx
uȂӂɁA\̂gēǂݏƁA fread()  fwrite() 
xg킸ɕ̃f[^ǂݏłĂbg
v
wA΁B Version 12.10 ( No.233 ) ̂Ƃ͂߂ǂ
ˁx
ułAۂ̂ƂA\̂găt@C̓ǂݏ̂̓f
bg̕v
wAȂ́Hx
u܂͂̃ACg̖B́AނƂǂݍގ
ACg 1 oCgɂĂ܂v
wccǂݍ߂ǁAAACg 8 oCgɂāA
̃t@CJƁccx
uĂ݂āv
wAccx

63
-925596313489040890000000000000000000000000000000000000(ȉ)
-52

whx
uƂɁA܂JƂł܂v
włȀԂŃt@Cɏ߂΁A͓ǂݍ߂񂾂ˁx
uAACg 8 oCgŏ܂邩ˁBłccƂ
΃vOo[WAbvƂƂɁAACg
ςႤƁv
whAÔǂݍ߂ȂȂx
uɁAACg̐ݒ̓vWFNg̐ݒŕς邩A\[X
t@CƃoCi[t@CāArhĎsƁv
wACgēǂݍ߂Ȃccx
uĂꍇX܂B̂قɂA\̂œǂݏ̂
͂肪܂v
wƂ΁Hx
uƂ΁ANX̖BNXɂ́Ap̊֌WƂāAP
t@Cɂ͏oȂ悤ɂȂĂ܂v
wGȏăt@CɏoȂ́Hx
uʂɂ͖BƂ낪A Version 7.07 ( No.127 ) Ő悤
Ɂv
wA\̂ƃNXĂقƂǓȂ񂶂ȂHx
uA\̂ĊȒPɃt@Cɏނ̂͂ƁA
Ƃ邩v
wϏނ̂̓_AĂƂˁx
uÃf[^܂Ƃ߂ď߂Ă͕̂֗AȑO
ďނ͕̂ʂv
wccǂǂȂ́IHx
u[ƁccƂ肠́A\̂𒼐ڏނ̂͂ȂŁB
Adg݂Ƃ@͉Ăāv
ẅȑÓAƂ̊֌WHx
uƁB̂̂gƂɂ͂ˁBƁA\̂ŏłA
ݍގɂ͍\̂gȂAĂ@܂v
wǂ䂱ƁHx

void ReadStructBinaryFile()
{
    // t@CJ܂B
    FILE *pstFile
        = fopen( "StructBinary.aaa", "rb" );
    if( !pstFile )
    {
        TRACE( "t@CJȂI\n" );
        return;
    }

    char ch;
    double d;
    char ch2;
    fread( &ch, sizeof( ch ), 1, pstFile );
    fread( &d, sizeof( d ), 1, pstFile );
    fread( &ch2, sizeof( ch2 ), 1, pstFile );
    TRACE( "%d\n", ch  );
    TRACE( "%.20f\n", d   );
    TRACE( "%d\n", ch2  );
    // 63
    // 2.00000000000000000000
    // 63

    // t@C܂B
    fclose( pstFile );
    return;
}

uA fread() łׂɓǂݍłv
wA̓ACg 1 oCg̏ꍇ̏x
u 8 oCg̏ꍇɂ́Hv
w^C fseek() Ă̂āAꂾƃt@C|C^
RɈړł邩x
upfBO΂Hv
wƁx

/*
    Preview Next Story!
*/
uoCi[f[^҂͎ōŌłv
wׂ[ˁx
u玟͂̂܂Ƃ߁v
wƂ킯Ŏx
 Version 12.13 oCi[̂܂Ƃ 
uɂÂIv
wA͑SPRIx
uƂA҂ˁccv


////////////////////////////////////////////////////////////////////
/*                QOORNPQPTij̍XV              */
http://www.kab-studio.biz/index.html

E قƂ́[Pbǉ\
@Ol̃zbgn[uɂV̂Sǉ\B


////////////////////////////////////////////////////////////////////
/*                          ӁII                            */

Ẽ[ԐMȂłB
EӌE]Ez[`[ʂȓL]肨肭B
http://www.kab-studio.biz/nikki2/
EwǓo^Ƃɂ͂̃y[WōsȂĂB
http://www.mag2.com/m/0000012198.htm
http://www.pubzine.com/detail.asp?id=000590
E͎ōsȂĂB
EobNio[͂̃y[Wɂ܂B
http://backno.mag2.com/reader/Back?id=0000012198
http://www.kab-studio.biz/Freeware/index.html#MailMagazine


////////////////////////////////////////////////////////////////////
/*
    KAB-studio.h
      Weekly Mail Magazine.
      Written by Kaburaya Seiden.
      http://www.kab-studio.biz/Info/MailMagazine/

    (C)KAB-studio 1999 - 2003 ALL RIGHTS RESERVED.
        http://www.kab-studio.biz/
        info@mail.kab-studio.biz
*/
////////////////////////////////////////////////////////////////////

