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

    KAB-studio.h


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

    MF 2003/09/29(Mon) No.225
    zMF 2750 ( Mag2 + Pubzine )
    sF ܂܂ ( URL: http://www.mag2.com/  ID: 0000012198 )
    sF Pubzine ( URL: http://www.pubzine.com/  ID: 590 )
*/
////////////////////////////////////////////////////////////////////

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

EقƂ́[Pbǉ
@Ol̃zbgn[uɂPbǉBÂznłB
[ Ol̃zbgn[u ]
http://www.kab-studio.biz/Comic/HotHerb/index.html


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

2003/09/21 (Sun)
@قƂ́[LЉcc邩BقƂ́[fBvO~O
y[W͍ȂłBAj͂ϓyĵB

2003/09/22 (Mon)
@d͑eXgJnBoO`B͋xoccBȂɏ̖k
HH@znɂāBȂ肩킢ȂĂ܂B

2003/09/23 (Tue)
@PX܂ŋxoBn[hfBXN̘^悪sccB

2003/09/24 (Wed)
@ĵ߂̃hLgB C ŃNgXgϒ
쐬BjbgeXgɉߐM͋֕H@xb^̎Ȃƕ`Â
ccBĖB

2003/09/25 (Thu)
@̃[XɌāBT`cuc̊ႢB̂т肷ƍ
̈ꖇ`Ȃ`Bt[fBNgNςĂ
B܂ BS-i ccB

2003/09/26 (Fri)
@^杌P prologue 𔃂ccBHtsȂB͌ߌ
xoBCvWFNg͍[XBƓłBXe
BAŏIBԂ낮BăAjŕyB

2003/09/27 (Sat)
@PPP܂ŋxoBȂςȃIuWFNgwccBtN
V͊댯ƎvB^杌P prologue ܂B̈ꖇ̓
OKƃChBđŌBăubgXB


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

@́@ll@|P|

@RƂĂ͂Â悤ȂƂ͂xƂȂ̌ĂBB
Ă\͂óBlƂ̏Cł̑̌oxɁAZp
サĂB
uv
@͌\B
úAmÂ̎ԂȂ낤v
@l̕\܂B
uCςBAƘrĂ΁A邢͂ƎvĂ
ccv
uccIHv
@l悤ɐiłBŖڕtĂ͂ł
BāA|Ŕ˓IɐU~낵͋؂AȂle
ɉB
uv
@ԂœガɍsBl͓U~낵Ď󂯂ɍsB
uIv
@Ӑg̗͂UiČaグBSɓݍ݁Anɓ
hÂL΂͂gĂ̈ꌂ́Afɋ߂pŁA
񂾂΂̑lɎ~߂͂ȂBŉグđ̐𗧂
B
@MbB
@ɏՌBɂĂȂlƂ̓́A܂ō|S̒
̂悤ɍdA@̎ɑSĂ̗͂WBl̂
Q{͂邩ƂłA̗͂Ƒ̗͂̑SĂ󂯓邱
͂łȂB
@ჂāA𗣂AnʂɎhB
@lɌւƉ苗B
@͂Aȏ̋uɓݍŁAl̐؂悪
̊zɐG悤ƂĂB
uccv
ucc܂AƂv
@l͂ߑЂƂāAɂ܂B
ucc܂A܂ōĂƂ͂ȂccȂ񂾁Áv
uƂɓ`̂A͋Ȃȁv
uႠ͐ΑlɏĂ˂ĂƂHv
u낭ĖYꂽ珟Ă邩ȁv
@͂́AƂӂ͏΂B
                                                              ()


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
wŋߍXVƂĂˁx
uقƂ́[֌W͏Ă݂ǁv
wΌfĂǂȂ́Hx
u܂Ăr݂v
wȂςςƍ΂̂Ɂx
uΔ{iIȂ̍Ă݂΂킩ccv
whx
http://www.kab-studio.biz/
_______________________________________________________________[KCM]

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

@Version 12.02
ƕ̕ϊ

úAlƕ̕ϊɂĐ܂v
wČ\dvHx
udvBƂ 01.txt  10.txt ܂ł̃t@CǂݍށAĂ
ɂׂɏ́v
w for gĐɕϊyĂƂˁx
uƁBꍇ̂߂ɂĂƂŁB܂A{Iȍl
BƂ΁v

    int i = 100;

uĂꍇA int ̒ɂ 0x00000064 Ă܂Bv

    char pch[256];

u̒ɕƂ 100 Ăꍇv

pch[0] == '1' == 0x31
pch[1] == '0' == 0x30
pch[2] == '0' == 0x30
pch[3] == \0  == 0x00

uƂɂȂĂ΂킯v
wꂼ̕R[hPĂccł int ƂȂႤ
ˁx
uBłAȒPɕϊłƎvȂHv
wǂāHx
u܂A 100 Pɕčl܂v
w[Aŏ 1 ƂƁA pch[0] ɓ킯ŁAꂪ 0x
31 ɂȂ΂悭āAcc 0 ̎ 0x30 ccA 0x30 ē
΂́Hx
uƁBPo 0x30 ƂꂪR[h 0 
 1 ɂȂ邩APĂ΂킯v
wȂقǁAȒPx
uۂɂƑςȂ񂾂ǁv
wցHx
uPóAǂ΂ƎvHv
w[Ɓccx
u܂v

void GetFirst()
{
    int i = 105;
    // 5 o܂B
    int i0 = i - ( ( i / 10 ) * 10 );
    TRACE( "%d\n", i0 );
    // 5
}

w 10 Ŋ 10 Ŋ|H@ĈꏏɂȂ񂶂x
uȂłA 105  10 Ŋ 10 A 10 | 100 v
wP̈ʂ 0 ɁccAňƍŏ̌c񂾁Ix
uƁBŁA͂P̈ʂAۂ̃vOł͑S
̌łȂႢȂA擾ȂႢȂv
w߂ǁ[x
u畁ʂ̓^Cg܂v
wcc񂶂x
uBƂgƂłB sprintf() Ƃv
wI@΁x
u Version 5.07 ( No.072 ) łˁBɁA CString Ȃ 
CString::Format() ăo֐邩炻̕v
wǂႤ́Hx
uقƂǓB

void Use_Format()
{
    CString cStr;
    cStr.Format( "%d", 100 );
    TRACE( "%s\n", cStr );
    // 100
}

w %d ƂAˁx
u sprintf()  CString::Format() A TRACE() ƂƓ
v
wЂƂΑvĂ킯ˁx
ułAȕ邩ȁv
wHx
ũ^Cv̂̂̈Ԃ̖́A^̃`FbNȂĂ_B
Ƃ΁v

void Use_Format_Bad()
{
    CString cStr;
    cStr.Format( "%s", 100 );
    // ANZXᔽB
}

wA Access Violation x
u܂A 100 Đ𕶎̃|C^ƌȂႤv
wAĂ܂x
uA܂킯B TRACE() łNv

void Use_TRACE_Bad()
{
    TRACE( "%s\n", 100 );
    // ANZXᔽB
}

wzgNccx
u TRACE()  sprintf()  CString::Format() yϒz
Ă̂gĂ邩v
wւ񂿂[ЂHx
ủϒ̂ŁAłnƂł
v
wcc܂肻āAI[o[[hƂgĂȂĂƁHx
uȌ^̈AȂčl炷̑gݍ킹ɂ
Ⴄłv
wmɁB炻̉ϒĂ̂gĂ킯ˁBŁA͌^
`FbNłȂAƁx
uƂ^n񂾂炵傤Ȃ񂾂ǂˁBŁA
ꍇɑɂȂ̂ Version 5.17 ( No.082 ) ŋ 
std::strstream Ƃv
w[AXg[nˁx
u͂ƌ^`FbNĂ邩vBAgĂ銄
͂Ȃ菭Ȃv
wȂĂAgႦ΂x
uOǁA C ꂵgȂƂ邩B C++ ł
gȂˁv
wcc̐lƍ킹ȂƂA[[̂ˁx
ułgȂgBSȂ炱̕ゾ
v
ẃ[x
uāA܂ł int 𕶎ɂĂ݂܂v
wcctHx
uAx͕ int ɂ܂v
wlēˁBꂼ̕Łccx 0x30 ΂
̂ȁx
uˁAE猩ĂāA 0x30 āAƂ͕̈ʒu
ɍ킹 10 ̉Ă̂|΂ȁv
w 10 ̉Hx
uEQڂȂ 10 ARڂȂ 100 ASڂȂ 1000 |đ
΁v
wAłłႤ񂾁x
u̕ϊ̕ȒPccƎvȂǁA͂łȂ
łv
wȂ́Hx
u܂̑OɁA܂^CgႩv

void Use_atoi()
{
    int i = atoi( "100" );
    TRACE( "%d\n", i );
    // 100
}

uȕɁA^C atoi() gΕϊł܂v
wց[AȒPI@łq[Ƃ[rĕςȖOccx
uĂѕ͐FXƎvǂˁB ASCII to Int ̗Ǝvv
w ASCII Hx
uقAʂ̉p ASCII Čāv
w Version 5.04 ( No.069 ) łˁBAʂ̕琔ɕ
AĈӖˁx
uŁÅ֐ɂ͂ЂƂ肪܂v

void Use_atoi_Bad()
{
    int i = atoi( "a" );
    TRACE( "%d\n", i );
    // 0
}

wH@ȊOĂ 0 ɂȂ񂾁x
u "0" ϊHv
w 0 ccǂ 0 Hx
uÅ֐́A 0 Ă̂AƂϊłȂ̂
킩Ȃłv
wx
uꉞA^C isdigit() Ă̂āAłP
`FbNł܂v

void Use_isdigit()
{
    TRACE( "%d\n", isdigit( '1' ) );
    TRACE( "%d\n", isdigit( 'a' ) );
    // 4
    // 0
}

w 4 Hx
u܂A 0 ȊOĂƂɂȂĂ邩A 0 Ȃ
Œׂȁv
wBgāccPׂ́Hx
uꂾƖʓ|A std::strstream Ƃgv
wȂvH@A΃t@CoA 
ƂȂ fail() ǂƂˁx
uƁB̕ӂ̎dg݂邩A^CȁB
܂֐ЂƂŊȒPɕϊł̂͊yǁv
wm std::strstream ƂĎǧ\߂ǂˁccx
u̕ӂL܂ĂȂBAׂƂł͂܂鎖
đAI͋CtĂˁv

/*
    Preview Next Story!
*/
wȂ񂩍ĕKĊx
uꂾĂƂĂƁv
wHx
uł邱Ƃ͂܂܂ς܂v
wx
uƂ킯Ŏv
 Version 12.03 p\R͌vZ@ 
wɂÂIx
u񂩂͂ȂłIv
w`x


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

EPO\ǎcc̗\
@PAV\ccĎvĂłAZŔ
ijBxĂ{Ȃłˁ`B

EقƂ́[Pbǉ\
@Ol̃zbgn[uɂPbǉ\BāAł邩ȂijB


////////////////////////////////////////////////////////////////////
/*                          Ӂ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
*/
////////////////////////////////////////////////////////////////////

