เบžเบฒเบชเบฒเบญเบฑเบ‡เบเบดเบ”เบžเบฒเบชเบฒเบเบฃเบฑเปˆเบ‡เปเบญเบชเบ›เบฒเป‚เบเบ™

Ad


OnWorks favicon

icmun - เบญเบญเบ™เบฅเบฒเบเปƒเบ™เบ„เบฅเบฒเบง

เปเบฅเปˆเบ™ icmun เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเบœเปˆเบฒเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เบ™เบตเป‰เปเบกเปˆเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ icmun เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป„เบ”เป‰เปƒเบ™ OnWorks เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เบŸเบฃเบตเป‚เบ”เบเปƒเบŠเป‰เบซเบ™เบถเปˆเบ‡เปƒเบ™เบซเบผเบฒเบเป†เบšเปˆเบญเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบญเบญเบ™เป„เบฅเบ™เปŒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบฑเปˆเบ™ Ubuntu Online, Fedora Online, Windows online emulator เบซเบผเบท MAC OS online emulator

เป‚เบ„เบ‡เบเบฒเบ™:

NAME


icmake - เบเบฒเบ™โ€‹เบšเปเบฒโ€‹เบฅเบธเบ‡โ€‹เบฎเบฑเบโ€‹เบชเบฒโ€‹เป‚เบ„เบ‡โ€‹เบเบฒเบ™ (เป€เบฎเบฑเบ”เปƒเบซเป‰) เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰ a C- เบ„เบทโ€‹เป„เบงโ€‹เบเบฐโ€‹เบเบญเบ™โ€‹

เบชเบฐเบซเบผเบธเบšเบชเบฑเบ‡เบฅเบงเบก


icmake [เบ—เบฒเบ‡เป€เบฅเบทเบญเบ] เปเบซเบผเปˆเบ‡[.im] [dest[.bim]] [-- [args]]

icmun bimfile

เบฅเบฒเบเบฅเบฐเบญเบฝเบ”


Icmake(1โ€‹) เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เป€เบ›เบฑเบ™โ€‹เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบโ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹ เป€เบฎเบฑเบ”เปƒเบซเป‰(1). เปƒเบ™เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ‚เบญเบ‡เบกเบฑเบ™, เบกเบฑเบ™
เป‚เบ—เบซเบฒเป‚เบ„เบ‡เบเบฒเบ™เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

o icm-pp เป€เบžเบทเปˆเบญเบ›เบฐเบกเบงเบ™เบœเบปเบ™เป„เบŸเบฅเปŒ icmake เบเปˆเบญเบ™

o icm-comp to byte-code compile the icmake s

o icm-exec เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบŸเบฅเปŒ byte-code

Icmake เบญเบฐโ€‹เบ™เบธโ€‹เบเบฒเบ”โ€‹เปƒเบซเป‰โ€‹เบœเบนเป‰โ€‹เบ‚เบฝเบ™โ€‹เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบžเบฒโ€‹เบชเบฒโ€‹เบเบฒเบ™โ€‹เบ‚เบฝเบ™โ€‹เป‚เบ›เบฃโ€‹เปเบเบฃเบก (เปƒเบเป‰โ€‹เบŠเบดเบ”โ€‹เบ„เป‰เบฒเบโ€‹เบ„เบทโ€‹เบ—เบตเปˆโ€‹เบฎเบนเป‰โ€‹เบˆเบฑเบโ€‹เบ”เบตโ€‹
C-programming language) เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบกเบตเบชเปˆเบงเบ™เบฎเปˆเบงเบกเปƒเบ™ (เบชเบฐเบฅเบฑเบšเบชเบฑเบšเบŠเป‰เบญเบ™).
เบšเปเบฒเบฅเบธเบ‡เบฎเบฑเบเบชเบฒ. เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰, icmake เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบžเบดเป€เบชเบ”เบ•เปˆเบฒเบ‡เป†เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบŠเบธเบ”เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™
เบซเบ™เป‰เบฒเบ—เบตเปˆเบžเบดเบชเบนเบ”เปเบฅเป‰เบงเบงเปˆเบฒเบกเบฑเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เปƒเบ™เบเบฒเบ™เบฎเบฑเบเบชเบฒเป‚เบ›เบผเปเบเบผเบก.

เป‚เบ„เบ‡เบเบฒเบ™ icmun(1) เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ–เบญเบ”เบ›เบฐเบเบญเบšเป„เบŸเบฅเปŒ byte-code (.bim). เบญเบดเบเบกเบธเบ™
เบ•เบปเป‰เบ™เบ•เปเปเบกเปˆเบ™เปƒเบŠเป‰เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เบชเบถเบเบชเบฒ, เปเบฅเบฐเบเบฒเบ™เบ”เบตเบšเบฑเบ.

เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเป‰เบฒเบ‡เบชเบฒเปเบšเบšเบ”เบฑเป‰เบ‡เป€เบ”เบตเบกเบˆเบฐเบฅเบงเบšเบฅเบงเบกเปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เป€เบกเบทเปˆเบญเป„เบŸเบฅเปŒเบซเบปเบงเบ–เบทเบเบ”เบฑเบ”เปเบเป‰. เปƒเบ™
เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ‚เบญเบ‡ C ++ เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเป‚เบ„เบ‡เบเบฒเบ™เบ™เบตเป‰เบกเบฑเบเบˆเบฐเป€เบ›เบฑเบ™เบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเบšเปเปˆเบ”เบต, เบเป‰เบญเบ™เบงเปˆเบฒเบเบฒเบ™เป€เบžเบตเปˆเบกเบชเบฐเบกเบฒเบŠเบดเบเปƒเบซเบกเปˆเปƒเบซเป‰เบเบฑเบš a
เบซเป‰เบญเบ‡เบฎเบฝเบ™เบšเปเปˆเบ›เบปเบเบเบฐเบ•เบดเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบซเป‰เบ—เปˆเบฒเบ™เบฅเบงเบšเบฅเบงเบกเปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบŠเบฑเป‰เบ™เบฎเบฝเบ™. เป€เบžเบทเปˆเบญเบˆเบฑเบ”เบเบฒเบ™เบซเป‰เบญเบ‡เบฎเบฝเบ™
dependencies icmbuld(1โ€‹) เบญเบฒเบ”โ€‹เบˆเบฐโ€‹เบเบงเบ”โ€‹เบชเบญเบšโ€‹ เบซเป‰เบญเบ‡ เป„เบŸเบฅเปŒเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ‚เบถเป‰เบ™เบเบฑเบš
เปƒเบ™เบšเบฑเบ™เบ”เบฒเบซเป‰เบญเบ‡เบฎเบฝเบ™. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, class-dependencies เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบ•เบตเบ„เบงเบฒเบกเปเบฒเบ. เบญเป‰เบฒเบ‡เป€เบ–เบดเบ‡ icmconf(7โ€‹)
man-page เบชเปเบฒเบฅเบฑเบšเบฅเบฒเบเบฅเบฐเบญเบฝเบ”เป€เบžเบตเปˆเบกเป€เบ•เบตเบก.

OPTIONS


Icmake เปƒเบŠเป‰เป„เบŸเบฅเปŒ เปเบฅเบฐเบ•เบปเบงเป€เบฅเบทเบญเบเบ•เปเปˆเป„เบ›เบ™เบตเป‰:

o เปเบซเบผเปˆเบ‡: icmake เป„เบŸเบฅเปŒเปเบซเบผเปˆเบ‡เบชเบฐเบ„เบฃเบดเบš (เบชเปˆเบงเบ™เบ‚เบฐเบซเบเบฒเบเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: im).

o เบˆเบธเบ”เบซเบกเบฒเบเบ›เบฒเบเบ—เบฒเบ‡: เบ„เบนเปˆ icmake เป„เบŸเบฅเปŒเบชเบฐเบ„เบฃเบดเบš (เบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™: `เปเบซเบผเปˆเบ‡'.bim, เป€เบญเบตเป‰เบ™เบงเปˆเบฒ 'เป„เบŸเบฅเปŒ .bim'
เบ”เป‰เบฒเบ™เบฅเบธเปˆเบก).

o --: icmake arguments เปเบเบเบ•เบปเบงเปเบเบ icmake เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบˆเบฒเบเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบœเปˆเบฒเบ™
เป„เบ›เบซเบฒ .bim filenl() เป‚เบ•เป‰เบ–เบฝเบ‡: เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰ -- เบ–เบทเบเบชเบปเปˆเบ‡เป„เบ›เบซเบฒเป„เบŸเบฅเปŒ .bim
as-is, เปเบฅเบฐเบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป„เบ”เป‰เบˆเบฒเบ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ argv เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป€เบ›เบฑเบ™ icmake
เบชเบฐเบ„เบฃเบดเบš เบ•เบปเป‰เบ™เบ•เป เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ—เบตเบชเบญเบ‡เบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™ (เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบขเบนเปˆเปƒเบ™เบžเบฒเบ เบœเบนเป‰เปƒเบŠเป‰ เบเปเบฒเบ™เบปเบ”
FUNCTIONS). เบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เบ—เบฒเบ‡เป€เบฅเบทเบญเบ (เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰) เป„เบ”เป‰ -- เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เบปเบงเปเบเบ.

Icmake เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ•เปˆเบฒเบ‡เป†, เบญเบฐเบ—เบดเบšเบฒเบเบ•เปเปˆเป„เบ›. เป„เบ”เป‰ -h เบ—เบฒเบ‡เป€เบฅเบทเบญเบ overrules เบญเบทเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”
เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบโ€‹, เป„เบ”เป‰โ€‹ -a เบ—เบฒเบ‡เป€เบฅเบทเบญเบ overrules เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบญเบทเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบเบปเบเป€เบงเบฑเป‰เบ™เบชเปเบฒเบฅเบฑเบš -h. เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบเบฑเบ‡เป€เบซเบผเบทเบญ
เบ—เบฒเบ‡โ€‹เป€เบฅเบทเบญเบ (-b, -c, -e, -i, -p เปเบฅเบฐ -t) เบกเบตโ€‹เบžเบฝเบ‡โ€‹เปเบ•เปˆโ€‹เบซเบ™เบถเปˆเบ‡โ€‹เบญเบฒเบ”โ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบฅเบฐโ€‹เบšเบธโ€‹เป„เบงเป‰โ€‹:

o -a
เบชเบฐเปเบ”เบ‡เบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบš icmake, overruled เป‚เบ”เบ -h;

o -b
discontinued: เปƒเบŠเป‰เบ—เบฒเบ‡เป€เบฅเบทเบญเบ -e เปเบ—เบ™;

o -c
เป„เบ”เป‰ icmake เปเบซเบผเปˆเบ‡เป„เบŸเบฅเปŒเบ–เบทเบเบฅเบงเบšเบฅเบงเบก, เบชเป‰เบฒเบ‡เป„เบŸเบฅเปŒ .bim;

o -e
เบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰ icmake เป„เบŸเบฅเปŒ .bim, เปƒเบซเป‰เป€เบ›เบฑเบ™ icmakeargument เป„เบŸเบฅเปŒเบ—เปเบฒเบญเบดเบ”. เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปƒเบ”เป†
arguments เบ–เบทเบเบชเบปเปˆเบ‡เบเบฑเบšเป„เบŸเบฅเปŒ .bim as-is, เปเบฅเบฐ -- เบšเปเปˆเบ„เบงเบ™เบฅเบฐเบšเบธ;

o -F
เบŠเบทเปˆเป„เบŸเบฅเปŒเปเบฅเบฐเบ—เบธเบ‡เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบชเบฐเบžเบฒเบšเบฅเบงเบกเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป‚เบ”เบ
icmake เบ–เบทเบเบชเบฐเปเบ”เบ‡เบขเบนเปˆเปƒเบ™เบเบฐเปเบชเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™;

o -h
เปƒเบซเป‰เบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เปเบฅเบฐเบชเบดเป‰เบ™เบชเบธเบ” icmake;

o -i
เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เปเบฒเบญเบดเบ”เปเบกเปˆเบ™ icmake เป„เบŸเบฅเปŒเบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบš, เป„เบŸเบฅเปŒเบ–เบฒเบ™เบชเบญเบ‡เปเบกเปˆเบ™
เบเปเปˆเบชเป‰เบฒเบ‡เบ–เป‰เบฒเบˆเปเบฒเป€เบ›เบฑเบ™. เบเบฒเบ™เป‚เบ•เป‰เปเบเป‰เบ‡เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปƒเบ”เบ™เบถเปˆเบ‡เบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบœเปˆเบฒเบ™เป„เบŸเบฅเปŒ .bim
เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบš, เปเบฅเบฐ -- เบšเปเปˆเบ„เบงเบ™เบฅเบฐเบšเบธ;

o -p
เป„เบ”เป‰ icmake เป„เบŸเบฅเปŒเปเบซเบผเปˆเบ‡เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆ preprocessed, เปเบฅเบฐเป„เบŸเบฅเปŒ preprocessed เปเบกเปˆเบ™เบฅเบฒเบเบฅเบฑเบเบญเบฑเบเบชเบญเบ™
to icmakeargument เป„เบŸเบฅเปŒเบ—เบตเบชเบญเบ‡เบ‚เบญเบ‡ (เบ•เบฒเบกเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ `เปเบซเบผเปˆเบ‡'.pim);

o -q
เบšเปเปˆเบชเบปเบ™เปƒเบˆ, เบˆเบฐเบ–เบทเบเบฅเบถเบšเบญเบญเบเปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ” icmake เบฎเบธเปˆเบ™;

o -t
เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰ -t เปเบกเปˆเบ™เบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒ .bim เบŠเบปเปˆเบงเบ„เบฒเบง, เป€เบŠเบดเปˆเบ‡เบ–เบทเบเบฅเบถเบšเบญเบญเบ
เบซเบผเบฑเบ‡เบˆเบฒเบ icmakeเป‚เบ—. เป€เบกเบทเปˆเบญโ€‹เปƒเบ”โ€‹ . เบ–เบทเบเบฅเบฐเบšเบธเป€เบ›เบฑเบ™เบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒ .bim เบŠเบปเปˆเบงเบ„เบฒเบง
เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบŠเบปเปˆเบงเบ„เบฒเบงเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, เบ•เบฒเบกเบ”เป‰เบงเบ icmakeprocess-id เบ‚เบญเบ‡, เบ•เบฒเบกเบ”เป‰เบงเบ
.เบšเบดเบก เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰.

เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบŠเบทเปˆเบ‚เบญเบ‡ .bim เบŠเบปเปˆเบงเบ„เบฒเบงเป„เบŸเบฅเปŒเบŠเบทเปˆเบ‚เบญเบ‡ icmake script เปเบซเบผเปˆเบ‡
เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบฅเบฐเบšเบธ. เบเบฒเบ™เป‚เบ•เป‰เปเบเป‰เบ‡เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปƒเบ”เบ™เบถเปˆเบ‡เบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบœเปˆเบฒเบ™เป„เบŸเบฅเปŒ .bim as-is, เปเบฅเบฐ
-- เบšเปเปˆเบ„เบงเบ™เบฅเบฐเบšเบธ; เบซเบผเบฑเบ‡โ€‹เบˆเบฒเบโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ—เบธเบ‡โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เป„เบŸเบฅโ€‹เปŒ script เปเบซเบผเปˆเบ‡โ€‹
(chmod +x script) เปเบฅเบฐโ€‹เปƒเบซเป‰โ€‹เบกเบฑเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เปเบ–เบงโ€‹เบ•เบปเป‰เบ™โ€‹เบชเบฐโ€‹เบšเบฑเบšโ€‹เป€เบŠเบฑเปˆเบ™โ€‹เบ™เบตเป‰โ€‹:

#!/usr/bin/icmake -t.

เป„เบ”เป‰ icmake script เบชเบฒเบกเบฒเบ”เบ–เบทเบเป€เบญเบตเป‰เบ™เบงเปˆเบฒเป‚เบ”เบเบเบปเบ‡:

script arg1 arg2

เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ”เบฑเปˆเบ‡เบเปˆเบฒเบง icmake script `เบญเบฑเบเบชเบญเบ™' เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆเบกเบฑเบ™เป„เบ”เป‰เบฎเบฑเบš
เบเบฐเบ—เบนเป‰เบ—เบตเปˆ script arg1 arg2.

o -T
เบ—เบฒเบ‡เป€เบฅเบทเบญเบเบ™เบตเป‰เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เบเบฑเบšเบŠเบทเปˆเบ‚เบญเบ‡เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ—เบตเปˆเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเป€เบเบฑเบšเบฎเบฑเบเบชเบฒ
เป„เบŸเบฅโ€‹เปŒโ€‹เบŠเบปเปˆเบงโ€‹เบ„เบฒเบงโ€‹. เบ•เบปเบงเบขเปˆเบฒเบ‡: เป€เบกเบทเปˆเบญเบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™ icmake script, เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ‚เบญเบ‡ icmake's
preprocessor เปเบกเปˆเบ™เป„เบŸเบฅเปŒเบŠเบปเปˆเบงเบ„เบฒเบงเบ—เบตเปˆเบ–เบทเบเบฅเบถเบšเบญเบญเบเปƒเบ™เป€เบงเบฅเบฒเบญเบญเบ. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ / tmp เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰,
เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆเบงเปˆเบฒ / tmp เบšเปเปˆเปเบกเปˆเบ™เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ‚เบฝเบ™เป„เบ”เป‰, เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰เบœเบนเป‰เปƒเบŠเป‰เบ›เบฐเบˆเบธเบšเบฑเบ™ $ เบšเป‰เบฒเบ™
เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰. เบŠเบทเปˆเป„เบŸเบฅเปŒเบŠเบปเปˆเบงเบ„เบฒเบง implicit เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ id เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ‚เบญเบ‡
เบ›เบฐเบˆเบธเบšเบฑเบ™ icmake เบ‚เบฐเบšเบงเบ™เบเบฒเบ™.

o -v
เบเบฒเบ™เบชเบฐเปเบ”เบ‡ icmakeเป€เบฅเบเบชเบฐเบšเบฑเบšเบ‚เบญเบ‡, เปเบฅเบฐเบชเบดเป‰เบ™เบชเบธเบ” icmake, overruled เป‚เบ”เบ -h

เบญเบดเบเบกเบธเบ™:

bimfile: เบ„เบนเปˆ icmake เป„เบŸเบฅเปŒเบชเบฐเบ„เบฃเบดเบš.

เป‚เบ›เบฃเป€เบŠเบชเป€เบŠเบต เบ—เบดเบ”เบ—เบฒเบ‡


เบ„เบณเบชเบฑเปˆเบ‡ preprocessor เบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบกเปˆเบ™เบกเบตเบขเบนเปˆ:

o เบ„เปเบฒโ€‹เป€เบซเบฑเบ™โ€‹:
เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ C เบ„เปเบฒเป€เบซเบฑเบ™ (เบ—เบฑเบ‡เบซเบกเบปเบ”เบฅเบฐเบซเบงเปˆเบฒเบ‡ /* เปเบฅเบฐ */) เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบ„เปเบฒเบ„เบดเบ”เบ„เปเบฒเป€เบซเบฑเบ™เบ•เปเปˆเบ—เป‰เบฒเบเปเบ–เบง (เบ—เบฑเบ‡เบซเบกเบปเบ”
เป€เบ™เบทเป‰เบญเปƒเบ™เปเบ–เบงเบ•เปเปˆเป„เบ›เบ™เบตเป‰ //) เบ–เบทเบโ€‹เบฅเบฐโ€‹เป€เบฅเบตเบโ€‹.

o Shell startup: เปเบ–เบงเบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡ icmake-script เบญเบฒเบ”เบˆเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ #!เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡, เบšเปˆเบญเบ™เบ—เบตเปˆ
เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡ เบเปเบฒเบ™เบปเบ”เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡เบ‚เบญเบ‡ icmake เป‚เบ„เบ‡เบเบฒเบ™. เป‚เบ”เบเบเบฒเบ™เป€เบฎเบฑเบ”เบšเบปเบ”
เบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบญเบตเป‰เบ™เบงเปˆเบฒเป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เป‚เบ—เบซเบฒเบขเปˆเบฒเบ‡เบŠเบฑเบ”เป€เบˆเบ™ icmake.

เบ•เบปเบงเบขเปˆเบฒเบ‡: เบ–เป‰เบฒเปเบ–เบงเบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡ (เบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰) icmakefile 'icm' (เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบ)
เบ›เบฐเบเบญเบšเบ”เป‰เบงเบ

#!/usr/bin/icmake -i

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ icm เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบญเบญเบเป€เบ›เบฑเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

/usr/bin/icmake -i icm ...

เบญเบตเบเบ—เบฒเบ‡เป€เบฅเบทเบญเบ,

#!/usr/bin/icmake -t /tmp/icm

เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰, เบชเบปเปˆเบ‡เบœเบปเบ™เปƒเบซเป‰เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡

#!/usr/bin/icmake -t /tmp/icm icm ...

เปƒเบ™โ€‹เบเปโ€‹เบฅเบฐโ€‹เบ™เบตโ€‹เบ™เบตเป‰โ€‹เป„เบŸเบฅโ€‹เปŒโ€‹เบ–เบฒเบ™โ€‹เบชเบญเบ‡โ€‹เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เป‚เบเบโ€‹เบเป‰เบฒเบโ€‹เบญเบญเบโ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบญเบญเบโ€‹.

o #include "เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™"
เป„เบŸเบฅเปŒ เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™ เปเบกเปˆเบ™เบฅเบงเบกเบขเบนเปˆเบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ‚เบญเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡

o #include
เป„เบŸเบฅเปŒ เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™ เปเบกเปˆเบ™เบฅเบงเบกเบขเบนเปˆเปƒเบ™เบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบ‚เบญเบ‡ #include เบ„เปเบฒเบชเบฑเปˆเบ‡; เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™
เบ–เบทเบเบ„เบปเป‰เบ™เบซเบฒเบขเบนเปˆเปƒเบ™เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ—เบตเปˆเบ‚เบฑเป‰เบ™เบ”เป‰เบงเบเบˆเปเป‰เบฒเบชเบญเบ‡เป€เบกเบฑเบ”เบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เป‚เบ”เบ IM เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก
เบ•เบปเบงเปเบ›. เบเบฒเบ™เบ›เบฐเบเบปเบ”เบ•เบปเบงเบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡ เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™ เปƒเบ™เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ—เบตเปˆเบฅเบฐเบšเบธเป„เบงเป‰เป‚เบ”เบ IM
เบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰.

o #เบเปเบฒเบ™เบปเบ” เบ•เบปเบงเบฅเบฐเบšเบธ [เบ„เปเบฒเบ™เบดเบเบฒเบก]
เบ‚เปเป‰เบ„เบงเบฒเบก เบ•เบปเบงเบฅเบฐเบšเบธ เบˆเบฐเบ–เบทเบเปเบ—เบ™เบ—เบตเปˆเบ”เป‰เบงเบ เบ„เปเบฒเบ™เบดเบเบฒเบก. เบ„เปเบฒเบ™เบดเบเบฒเบกเบญเบฒเบ”เบˆเบฐเบ›เบฐเบเบญเบšเบ”เป‰เบงเบ
เบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡เป€เบ–เบดเบ‡เบ•เบปเบงเบฅเบฐเบšเบธเบ—เบตเปˆเป„เบ”เป‰เบเปเบฒเบ™เบปเบ”เป„เบงเป‰เปเบฅเป‰เบง, เป‚เบ”เบเปƒเบŠเป‰ ${identifier} เบฎเบนเบšเปเบšเบš. เบ–เป‰เบฒ
${identifier} เบเบฑเบ‡เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเบเปเบฒเบ™เบปเบ” (เป€เบ—เบทเปˆเบญ), เบ‚เปเป‰เบ„เบงเบฒเบก ${identifier} เบ–เบทเบเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป„เบงเป‰เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡.
เป€เบžเบทเปˆเบญโ€‹เบ›เป‰เบญเบ‡โ€‹เบเบฑเบ™โ€‹เบšเปเปˆโ€‹เปƒเบซเป‰โ€‹เป€เบเบตเบ”โ€‹เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบˆเปเบฒโ€‹เบเบฑเบ”โ€‹เบซเบผเบฒเบโ€‹เบ—เบตเปˆโ€‹เบชเบธเบ” 100โ€‹ ${identifier} เบเบฒเบ™เบ—เบปเบ”เปเบ—เบ™เปเบกเปˆเบ™เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰.

เบ„เปเบฒเบ™เบดเบเบฒเบกเบชเบทเบšเบ•เปเปˆเบขเบนเปˆเปƒเบ™เปเบ–เบงเบ•เปเปˆเป„เบ›เบ–เป‰เบฒเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบชเบธเบ”เบ—เป‰เบฒเบเปƒเบ™เปเบ–เบงเปเบกเปˆเบ™ a
backslash (\). (เป€เบŠเบดเปˆเบ‡เบšเปเปˆเป„เบ”เป‰เบฅเบงเบกเบขเบนเปˆเปƒเบ™เบ„เปเบฒเบ™เบดเบเบฒเบก). เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบเปˆเบญเบ™
concatenates double-quuted strings, เปเบฅเบฐ strings เบงเบปเบ‡เบขเบทเบก double เบญเบฒเบ”เบˆเบฐเบšเปเปˆเบ‚เบฐเบซเบเบฒเบเบซเบผเบฒเบ
เบชเบฒเบ. เบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡เบซเบผเบฒเบเบญเบฑเบ™ (เบ™เบญเบเบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบญเป‰เบฒเบ‡เบญเบตเบ‡เบ„เบนเปˆ) เปƒเบ™เบ„เปเบฒเบ™เบดเบเบฒเบกเปเบกเปˆเบ™
เบชเบฑเบ™เบเบฒเบเบฑเบšเบžเบทเป‰เบ™เบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เบ”เบฝเบง.

เบ„เปเบฒเบ™เบดเบเบฒเบกเบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰ # เบ™เบดเบเบฒเบก เบ•เบปเบงเบฅเบฐเบšเบธเป€เบ›เบฑเบ™เบ—เบฒเบ‡เป€เบฅเบทเบญเบ. เบ–เป‰เบฒเบ–เบทเบเบฅเบฐเป€เบงเบฑเป‰เบ™, เป„เบ”เป‰
macro เบ–เบทเบเบเปเบฒเบ™เบปเบ”, เบชเบฐเบ™เบฑเป‰เบ™เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™ #if(n) def เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ (เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰), เปเบ•เปˆเบžเบงเบเป€เบ‚เบปเบฒ
เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเปเบ—เบ™เบ—เบตเปˆเบ”เป‰เบงเบเบ‚เปเป‰เบ„เบงเบฒเบกเปƒเบ”เป†เปƒเบ™ icmake เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”.

o #ifdef เบ•เบปเบงเบฅเบฐเบšเบธ
เบ–เป‰เบฒ เบ•เบปเบงเบฅเบฐเบšเบธ macro เป„เบ”เป‰เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป€เบ›เบฑเบ™เบšเบฅเบฑเบญเบเบ•เปเปˆเป„เบ›เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ” (เบˆเบปเบ™เบเปˆเบงเบฒเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆ #เบญเบทเปˆเบ™
or #เบชเบธเบ”เบ—เป‰เบฒเบ เบ„เปเบฒเบชเบฑเปˆเบ‡เป„เบ”เป‰เบ–เบทเบเบญเปˆเบฒเบ™) เปเบกเปˆเบ™ byte-compiled. เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ•เบฑเบ™เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เปเบกเปˆเบ™
เบšเปเปˆเบชเบปเบ™เปƒเบˆ.

o #ifndef เบ•เบปเบงเบฅเบฐเบšเบธ
เบ–เป‰เบฒ เบ•เบปเบงเบฅเบฐเบšเบธ เบกเบฐเบซเบฒเบžเบฒเบเปเบกเปˆเบ™ เบšเปเปˆ เบเปเบฒเบ™เบปเบ”เบฅเบฐเบซเบฑเบ”เบ•เปเปˆเป„เบ›เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ” (เบˆเบปเบ™เบเปˆเบงเบฒเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆ
#เบญเบทเปˆเบ™ or #เบชเบธเบ”เบ—เป‰เบฒเบ เบ„เปเบฒเบชเบฑเปˆเบ‡เป„เบ”เป‰เบ–เบทเบเบเบงเบ”เบžเบปเบš) เปเบกเปˆเบ™ byte-compiled. เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ•เบฑเบ™เบ‚เบญเบ‡
เบฅเบฐเบซเบฑเบ”เบ–เบทเบเบฅเบฐเป€เบฅเบตเบ.

o #เบญเบทเปˆเบ™
เบขเบธเบ”เบ•เบด เบ #ifdef เปเบฅเบฐ #ifndef เบ„เปเบฒเบชเบฑเปˆเบ‡, reversing เบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบเบญเบกเบฎเบฑเบšเบเปˆเบฝเบงเบเบฑเบš
เบฅเบฐเบซเบฑเบ”เบ•เปเปˆเป„เบ›เบ™เบตเป‰. เบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡ #เบญเบทเปˆเบ™ เบ„เปเบฒเบชเบฑเปˆเบ‡เบชเบฒเบกเบฒเบ”เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฑเบš #if(n) def
เบ—เบดเบ”เบ—เบฒเบ‡.

o #เบชเบธเบ”เบ—เป‰เบฒเบ
เบขเบธเบ”เบเบฒเบ™เบ›เบดเบ”เป‚เบ›เบฃเป€เบŠเบชเป€เบŠเบตเบเปˆเบญเบ™เป€เบฅเบตเปˆเบกเบˆเบฒเบเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆ #ifdef, #ifndef or #เบญเบทเปˆเบ™
เบ„เปเบฒเบชเบฑเปˆเบ‡. เป„เบ”เป‰ #เบชเบธเบ”เบ—เป‰เบฒเบ เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเปเบฅเบฐเบเบฒเบ™เบˆเบฑเบšเบ„เบนเปˆเบ‚เบญเบ‡เบกเบฑเบ™ #if(n) def เบ„เปเบฒเบชเบฑเปˆเบ‡เบ•เป‰เบญเบ‡เป€เบ›เบฑเบ™
เบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™เป„เบŸเบฅเปŒเบ”เบฝเบงเบเบฑเบ™.

o #เบชเบธเบ”เบเบญเบ” เบ•เบปเบงเบฅเบฐเบšเบธ
เป€เบญเบปเบฒ เบ•เบปเบงเบฅเบฐเบšเบธ เบˆเบฒเบเบŠเบธเบ”เบ‚เบญเบ‡เบชเบฑเบ™เบเบฒเบฅเบฑเบเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰. เบ™เบตเป‰เบšเปเปˆเบกเบตเบœเบปเบ™เบเบฐเบ—เบปเบš
เบชเบฐเป€เบžเบฒเบฐเบ‚เบญเบ‡เบชเบฑเบ™เบเบฒเบฅเบฑเบเบ—เบตเปˆเบเบณเบ™เบปเบ”เป„เบงเป‰เบเปˆเบญเบ™เปœเป‰เบฒเบ™เบตเป‰ เบ•เบปเบงเบฅเบฐเบšเบธ เบ„เปเบฒเบ™เบดเบเบฒเบก
เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹. เบ–เป‰เบฒ เบ•เบปเบงเบฅเบฐเบšเบธ เบเบฑเบ‡โ€‹เบšเปเปˆโ€‹เบ—เบฑเบ™โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบญเบญเบโ€‹เบ„เปเบฒโ€‹เป€เบ•เบทเบญเบ™โ€‹.

เบ‚เปเป‰เบกเบนเบ™ TYPES


Icmake เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™โ€‹เบ›เบฐโ€‹เป€เบžเบ”โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เป€เบซเบผเบปเปˆเบฒโ€‹เบ™เบตเป‰โ€‹:

o ASCII เบฅเบฑเบเบชเบฐเบ™เบฐ เบ„เบปเบ‡เบ—เบตเปˆ
เบ„เปˆเบฒเบ„เบปเบ‡เบ—เบตเปˆเบ‚เบญเบ‡เบ•เบปเบงเบญเบฑเบเบชเบญเบ™ ASCII เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเปœเบถเปˆเบ‡เบ•เบปเบงเบญเบฑเบเบชเบญเบ™, เบญเป‰เบญเบกเบฎเบญเบšเบ”เป‰เบงเบเบ•เบปเบงเบ”เบฝเบง เบซเบผเบท เบ„เบนเปˆ
เบงเบปเบ‡เบขเบทเบก. เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ”เบฝเบง (เบ•เบปเบงเบขเปˆเบฒเบ‡: 'เบ') เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบ‚เบญเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐเบ•เบปเบงเบกเบฑเบ™เป€เบญเบ‡. เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™
เบฅเปเบฒเบ”เบฑเบšเบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบต (เบ•เบปเบงเบขเปˆเบฒเบ‡: '\n') เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เปเบฅเบฐเป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบ‚เบญเบ‡เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ—เบตเปˆเบ›เปˆเบฝเบ™เปƒเบˆเป€เบซเบฅเบทเป‰เบญเบกเปƒเบชเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ
เบกเบนเบ™เบ„เปˆเบฒ (เบ•เบปเบงเบขเปˆเบฒเบ‡: '\n' เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบ‚เบญเบ‡เบ„เปˆเบฒ ascii 10 (เบ—เบปเบ”เบชเบฐเบ™เบดเบเบปเบก)). เบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบตเบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™
เบฅเปเบฒเบ”เบฑเบš (เบ•เบปเบงเบขเปˆเบฒเบ‡, '\x') เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบ‚เบญเบ‡เบฅเบฑเบเบชเบฐเบ™เบฐ ascii เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบฅเบฑเบเบชเบฐเบ™เบฐเบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบต
(เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ '\x' เป€เบ—เบปเปˆเบฒเบเบฑเบ™ 'x'). เบฅเปเบฒเบ”เบฑเบšเบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบตเบ—เบตเปˆเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบชเบฒเบกเบ•เบปเบงเป€เบฅเบเบ–เบฒเบ™เปเบ›เบ”เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™
เบฅเบฑเบเบชเบฐเบ™เบฐ ascii เบ—เบตเปˆเบชเบญเบ”เบ„เป‰เบญเบ‡เบเบฑเบšเป‚เบกเบ”เบนเป‚เบฅ octal value 256 (เบ•เบปเบงเบขเปˆเบฒเบ‡: '\123').
เบฅเปเบฒเบ”เบฑเบš Escape เบ›เบฐเบเบญเบšเบ”เป‰เบงเบ x เบ•เบดเบ”เบ•เบฒเบกเบ”เป‰เบงเบเบชเบญเบ‡เบ•เบปเบงเป€เบฅเบเบ–เบฒเบ™เบชเบดเบšเบซเบปเบเป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™
เบ•เบปเบงเบญเบฑเบเบชเบญเบ™ ascii เบ—เบตเปˆเบชเบญเบ”เบ„เป‰เบญเบ‡เบเบฑเบšเบ„เปˆเบฒเป€เบฅเบเบ–เบฒเบ™เบชเบดเบšเบซเบปเบ (เบ•เบปเบงเบขเปˆเบฒเบ‡: '\xa4').

o int
เบ„เปˆเบฒเบฅเบงเบก, เบ•เบฑเป‰เบ‡เปเบ•เปˆ -0x8000 เป‚เบ”เบเบœเปˆเบฒเบ™เบเบฒเบ™ 0x7ffff. int เบ„เบปเบ‡เบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™
เบฅเบฐเบšเบธเป€เบ›เบฑเบ™เบ•เบปเบงเป€เบฅเบเบ—เบปเบ”เบชเบฐเบ™เบดเบเบปเบก (เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบ•เบปเบงเป€เบฅเบ 1 เบซเบฒ 9), เป€เบฅเบเปเบ›เบ”
(เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ 0, เบ•เบดเบ”เบ•เบฒเบกเบ”เป‰เบงเบเบ•เบปเบงเป€เบฅเบเปเบ›เบ” เบซเบผเบทเบซเบผเบฒเบเบเบงเปˆเบฒเบ™เบฑเป‰เบ™) เป€เบฅเบเบ–เบฒเบ™เบชเบดเบšเบซเบปเบ
(เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ 0x, เบ•เบดเบ”เบ•เบฒเบกเบ”เป‰เบงเบเบ•เบปเบงเป€เบฅเบเป€เบฅเบเบ–เบฒเบ™เบชเบดเบšเบซเบปเบเบซเบผเบทเบซเบผเบฒเบเบเบงเปˆเบฒเบ™เบฑเป‰เบ™) เบซเบผเบทเป€เบ›เบฑเบ™ ASCII
เบ„เบปเบ‡เบ•เบปเบง.

o string
เบ•เบปเบงเปเบ›เบ‚เปเป‰เบ„เบงเบฒเบก. String constant เปเบกเปˆเบ™ delimited by double quotes. เบซเบผเบฒเบเบชเบฒเบ
constant เบญเบฒเบ”โ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™ concatenatedโ€‹, เปเบ•เปˆโ€‹เบชเบฐโ€‹เบ•โ€‹เบฃเบดโ€‹เบ‡โ€‹เบ„เบปเบ‡โ€‹เบ—เบตเปˆโ€‹เบ”เบฝเบงโ€‹เบญเบฒเบ”โ€‹เบˆเบฐโ€‹เบšเปเปˆโ€‹เป„เบ”เป‰โ€‹เบเบงเบกโ€‹เป€เบญเบปเบฒโ€‹เบซเบผเบฒเบโ€‹
เบชเบฒเบ. เบชเบฐเบ•เบฃเบดเบ‡เบ„เบปเบ‡เบ—เบตเปˆเบ—เบตเปˆเปเบเบเบญเบญเบเบ”เป‰เบงเบเบžเบทเป‰เบ™เบ—เบตเปˆเบชเบตเบ‚เบฒเบงเป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™ (เป€เบŠเบฑเปˆเบ™: เบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡, เปเบ–เบงเปƒเปเปˆ,
เบ„เปเบฒเบ„เบดเบ”เป€เบซเบฑเบ™) เปเบกเปˆเบ™ concatenated เปเบฅเบฐเป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบ‚เบญเบ‡เบ„เบปเบ‡เบ—เบตเปˆเบชเบฐเบ•เบฃเบดเบ‡เบ”เบฝเบง. เป€เบžเบทเปˆเบญเบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เป€เบ–เบดเบ‡
end-of-line เปƒเบ™ string constant เปƒเบŠเป‰ the \n เบฅเปเบฒเบ”เบฑเบšเบเบฒเบ™เบซเบฅเบปเบšเบซเบ™เบต.

เบ•เบปเบงเป€เบฅเบเบ„เบปเบ‡เบ—เบตเปˆเบ‚เบญเบ‡เบ•เบปเบงเบญเบฑเบเบชเบญเบ™ ASCII เบญเป‰เบญเบกเบฎเบญเบšเบ”เป‰เบงเบเบงเบปเบ‡เบขเบทเบกเบ„เบนเปˆเบเบฑเบ‡เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™
เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ—เบฒเบ‡เป€เบฅเบเบ„เบฐเบ™เบดเบ”เบ–เป‰เบฒเปœเบถเปˆเบ‡เปƒเบ™เบ•เบปเบงเบ”เบณเป€เบ™เบตเบ™เบเบฒเบ™เปเบกเปˆเบ™ an int. เบฅเบฑเบเบชเบฐเบ™เบฐเบ”เบฝเบง
เบ„เบปเบ‡เบ—เบตเปˆ เบ•เป‰เบญเบ‡ เป€เบ›เบฑเบ™เบ„เบปเบ‡เบ—เบตเปˆ, เปเบฅเบฐเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบ›เบฑเบ™ string เบ•เบปเบงเปเบ›.

เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™, เบ•เบปเบงเบญเบฑเบเบชเบญเบ™ ASCII เบ„เบปเบ‡เบ—เบตเปˆเบญเป‰เบญเบกเบฎเบญเบšเบ”เป‰เบงเบเบงเบปเบ‡เบขเบทเบกเบ”เบฝเบงเบญเบฒเบ”เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™
เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบ„เบฒเบ”เบเบฒเบ™ string operand.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ
เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบŠเบธเบ”เบ‚เบญเบ‡เบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เป„เบ”เป‰ string เบ„เบธเบ™เบ„เปˆเบฒ. เป€เบกเบทเปˆเบญโ€‹เปƒเบ”โ€‹
เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบญเบปเบ‡เบ›เบฐเบเบญเบš, เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡เบกเบฑเบ™เบ–เบทเบเบชเบฐเปเบ”เบ‡เป‚เบ”เบเบ”เบฑเบ”เบŠเบฐเบ™เบต 0.

o void
เปƒเบŠเป‰เบเบฑเบšเบ™เบดเบเบฒเบกเบŸเบฑเบ‡เบŠเบฑเบ™เป€เบžเบทเปˆเบญเบŠเบตเป‰เบšเบญเบเบงเปˆเบฒเบŸเบฑเบ‡เบŠเบฑเบ™เบšเปเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™ a
เบกเบนเบ™เบ„เปˆเบฒ.

เบ•เบปเบงเปเบ›เบชเบฒเบกเบฒเบ”เบ–เบทเบเบเปเบฒเบ™เบปเบ”เปƒเบ™เบฅเบฐเบ”เบฑเบšเป‚เบฅเบเป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบฅเบฐเบ”เบฑเบšเบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบžเบฒเบเปƒเบ™
เบซเบ™เป‰เบฒเบ—เบตเปˆ. เป€เบกเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบžเบฒเบเปƒเบ™เบซเบ™เป‰เบฒเบ—เบตเปˆ, เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ C เบ‚เบญเบšเป€เบ‚เบ” เปเบฅเบฐเบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เป€เบšเบดเปˆเบ‡เป€เบซเบฑเบ™
เบชเบฐเบซเบกเบฑเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ•เบปเบงเปเบ›เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบžเบฝเบ‡เปเบ•เปˆเบขเบนเปˆเปƒเบ™เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เบซเบผเบทเบขเบนเปˆเปƒเบ™เบฎเบฑเบ‡เบ—เบตเปˆเป€เบฅเบดเบเป€เบŠเบดเปˆเบ‡เบเบงเปˆเบฒ
เบ•เบฑเบ™, เบเบฒเบ™เป€เบšเบดเปˆเบ‡เป€เบซเบฑเบ™เบ‚เบญเบ‡เบžเบงเบเบกเบฑเบ™เบ–เบทเบเบ›เบดเบ”เบšเบฑเบ‡เบขเบนเปˆเปƒเบ™เบ—เปˆเบญเบ™เป„เบกเป‰เบ—เบตเปˆเบกเบตเบฎเบฑเบ‡เบซเบผเบฒเบเป‚เบ”เบเบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบ•เบปเบงเบ•เบปเบ™.
เบกเบตเบŠเบทเปˆเบ•เบปเบงเปเบ›เบžเบฒเบเปƒเบ™เบ—เปˆเบญเบ™เป„เบกเป‰เบ—เบตเปˆเบเบฑเบ‡เป€เบฅเบดเบเบเบงเปˆเบฒเบ™เบฑเป‰เบ™. เบ•เบปเบงเปเบ›เบ–เบทเบเบžเบดเบกเบขเปˆเบฒเบ‡เปเบ‚เบ‡เปเบฎเบ‡, เปเบฅเบฐ
เบšเปเปˆเบชเบฒเบกเบฒเบ”เบกเบตเบ›เบฐเป€เบžเบ” void.

เบ•เบปเบงเปเบ›เบญเบฒเบ”เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบกเบทเปˆเบญเบžเบงเบเป€เบ‚เบปเบฒเบ–เบทเบเบเปเบฒเบ™เบปเบ”. Initializations เปเบกเปˆเบ™เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ, เบงเปˆเบฒ
เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบซเบ™เป‰เบฒโ€‹เบ—เบตเปˆโ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป„เบงเป‰โ€‹เบเปˆเบญเบ™โ€‹เบซเบผเบทโ€‹เป‚เบ”เบโ€‹เบœเบนเป‰โ€‹เปƒเบŠเป‰โ€‹, เบ„เปˆเบฒโ€‹เบ„เบปเบ‡โ€‹เบ—เบตเปˆโ€‹, เปเบฅเบฐโ€‹เบ„เบธเบ™โ€‹เบ„เปˆเบฒโ€‹เบ‚เบญเบ‡โ€‹เบ•เบปเบงโ€‹เปเบ›โ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹
เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบขเบนเปˆเปƒเบ™เบˆเบธเบ”เบ‚เบญเบ‡เบ„เปเบฒเบ™เบดเบเบฒเบก.

เบเบณเบ™เบปเบ”เป„เบงเป‰เบฅเปˆเบงเบ‡เปœเป‰เบฒ เบ„เบปเบ‡เบ—เบตเปˆ


เบ„เบปเบ‡เบ—เบตเปˆเบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบกเปˆเบ™เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เบฅเปˆเบงเบ‡เปœเป‰เบฒเป‚เบ”เบ icmake. เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบ„เบปเบ‡เบ—เบตเปˆ int เบ„เบธเบ™เบ„เปˆเบฒ:

โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
เบ„เปˆเบฒเบชเบฑเบ™เบเบฒเบฅเบฑเบเบ—เบตเปˆเบกเบตเบˆเบธเบ”เบ›เบฐเบชเบปเบ‡
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
O_ALL 8 makelist
O_DIR 2 makelist
O_FILE 1 เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบเบฒเบ™
O_SUBDIR 4 makelist
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
เบ›เบดเบ” 0 เบชเบฝเบ‡เบ”เบฑเบ‡
ON 1 เบชเบฝเบ‡เบ”เบฑเบ‡
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
P_CHECK 0 เป‚เบ—เบฅเบฐเบšเบปเบš
P_NOCHEC 1 เป‚เบ—เบฅเบฐเบšเบปเบš
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
S_IEXEC 32 เบชเบฐเบ–เบดเบ•เบด
S_IFCHR 1 เบชเบฐเบ–เบดเบ•เบด
S_IFDIR 2 เบชเบฐเบ–เบดเบ•เบด
S_IFREG 4 เบชเบฐเบ–เบดเบ•เบด
S_IREAD 8 เบชเบฐเบ–เบดเบ•เบด
S_IWRITE 16 เบชเบฐเบ–เบดเบ•เบด
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

เบ„เบปเบ‡เบ—เบตเปˆเบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบกเปˆเบ™เบ‚เบถเป‰เบ™เบเบฑเบšเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเบณ:

โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
เบชเบฑเบ™โ€‹เบเบฒโ€‹เบฅเบฑเบ 1 เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ—เบตเปˆโ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป„เบงเป‰โ€‹เปƒเบ™โ€‹เป€เบงโ€‹เบ—เบตโ€‹, เบ–เป‰เบฒโ€‹เบšเปเปˆโ€‹เบ”เบฑเปˆเบ‡โ€‹เบ™เบฑเป‰เบ™โ€‹เปเบกเปˆเบ™ 0โ€‹
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
unix Unix, เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบกเบต gcc compiler เบ‚เบญเบ‡ GNU
UNIX เบญเบฒเบ”เบกเบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบญเบทเปˆเบ™
linux x86 เปเบฅเปˆเบ™ Linux (เบ›เบปเบเบเบฐเบ•เบดเปเบฅเป‰เบงเบกเบต gcc)
LINUX เบญเบฒเบ”เบกเบตเบ—เบฒเบ‡เป€เบฅเบทเบญเบเบญเบทเปˆเบ™
M_SYSV, M_UNIX x86 เปเบฅเปˆเบ™ SCO/Unix
_POSIX _SOURCE Unix เบเบฑเบš Posix compliant compiler
__hpux HP-UX, เบเบฑเบšเบ„เบญเบกเบžเบตเป€เบฅเบต HP เบžเบทเป‰เบ™เป€เบกเบทเบญเบ‡
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€

เบœเบนเป‰เบ›เบฐเบเบญเบšเบเบฒเบ™


เบžเบดเบก int เป‚เบ•เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™:

เบ—เบฑเบ‡เบซเบกเบปเบ” C เป‚เบ•เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป„เบ”เป‰ (เบเบปเบเป€เบงเบฑเป‰เบ™เบ•เบปเบงเบŠเบตเป‰เบšเบญเบ, เป€เบ›เบฑเบ™ icmake เบšเปเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™
เบ•เบปเบงเบŠเบตเป‰). เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ„เบทเบเบฑเบšเบ‚เบญเบ‡เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒ C- เบ„เบนเปˆโ€‹เบฎเปˆเบงเบกโ€‹เบ‡เบฒเบ™โ€‹เบžเบฒโ€‹เบชเบฒโ€‹เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹.

string-typed เป‚เบ•เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™:

เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ string เบ›เบฐเป€เบžเบ”เบ•เบปเบงเปเบ› เปเบฅเบฐ/เบซเบผเบทเบ„เปˆเบฒเบ„เบปเบ‡เบ—เบตเปˆเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบกเปˆเบ™เบกเบตเบขเบนเปˆ (a เปเบฅเบฐ b
เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบ‚เบญเบ‡ string เบ•เบปเบงเปเบ› เบซเบผเบทเบ„เปˆเบฒเบ„เบปเบ‡เบ—เบตเปˆ):

o a + b: เบเบฑเบšเบ„เบทเบ™เบกเบฒเปƒเปเปˆ string เบกเบนเบ™โ€‹เบ„เปˆเบฒโ€‹เบ—เบตเปˆโ€‹เบ›เบฐโ€‹เบเบญเบšโ€‹เบ”เป‰เบงเบ concatenation เบ‚เบญเบ‡โ€‹ string เบ„เปˆเบฒ a
เปเบฅเบฐ b. เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒ string เบ„เบปเบ‡เบ—เบตเปˆเบญเบฒเบ”เบˆเบฐเบ–เบทเบ concatetated เป‚เบ”เบเบเบปเบ‡ (เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ +
operator), eg, เบชเบญเบ‡เป€เบชเบฑเป‰เบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบ—เบฑเบ‡เบชเบญเบ‡เบเปเบฒเบ™เบปเบ” string "เบชเบฐเบšเบฒเบเบ”เบต เป‚เบฅเบ ":

"เบชเบฐโ€‹เบšเบฒเบโ€‹เบ”เบตโ€‹เบŠเบฒเบงโ€‹เป‚เบฅเบ"
"เบชเบฐเบšเบฒเบเบ”เบต" + "เป‚เบฅเบ"

o a += b: a เบ•เป‰เบญเบ‡เป€เบ›เบฑเบ™ string เบ•เบปเบงเปเบ›, เบ—เบตเปˆ string เบ•เบปเบงเปเบ›เบซเบผเบทเบกเบนเบ™เบ„เปˆเบฒ b is
เบ•เปเปˆเบ—เป‰เบฒเบ.

o เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบš string: operators == != <= >= < > != เปเบฅเบฐ == เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบเบฑเบš string
เบ„เปˆเบฒ เบซเบผเบทเบ•เบปเบงเปเบ›, เบชเบปเปˆเบ‡เบ„เบทเบ™ 1 เบ–เป‰เบฒเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบชเบณเป€เบฅเบฑเบ”, เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ 0.
เบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเปเบกเปˆเบ™เบ•เบปเบงเบžเบดเบกเบ™เป‰เบญเบ, เปเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบ„เปเบฒเบชเบฑเปˆเบ‡เบซเบผเบทเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ•เบฒเบกเบ—เบตเปˆเป„เบ”เป‰เบเปเบฒเบ™เบปเบ”
เปƒเบ™ ASCII เบŠเบธเบ”เบ•เบปเบงเบญเบฑเบเบชเบญเบ™.

o !a: เบšเบนเบฅเบตเบ™ ! (เบšเปเปˆ) operator เบเบฑเบšเบ„เบทเบ™ 1 เบ–เป‰เบฒ string a เปเบกเปˆเบ™เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ, เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ 0 เปเบกเปˆเบ™
เบเบฑเบšเบ„เบทเบ™เบกเบฒ.

o a younger b, a เปƒเบซเบกเปˆเบเบงเปˆเบฒ b: เบ•เบญเบš 1 เบ–เป‰เบฒเป„เบŸเบฅเปŒ a เบšเปเปˆเบ”เบปเบ™เบกเบฒเบ™เบตเป‰เบซเบผเบฒเบเบเปˆเบงเบฒเป„เบŸเบฅเปŒ b. เบ•เบปเบงเบขเปˆเบฒเบ‡:
"source.cc" เปƒเบซเบกเปˆเบเบงเปˆเบฒ "เปเบซเบผเปˆเบ‡.o". เป„เบŸเบฅเปŒ a เปเบฅเบฐ b เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบต: เบ–เป‰เบฒเบ—เบฑเบ‡เบชเบญเบ‡เบšเปเปˆเบกเบต
เบกเบตเบขเบนเปˆ 0 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™; เบ–เป‰เบฒ b เบšเปเปˆเบกเบต, 1 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™; เบ–เป‰เบฒ a เบšเปเปˆเบกเบต 0 เปเบกเปˆเบ™
เบเบฑเบšเบ„เบทเบ™; เบ–เป‰เบฒเบžเบงเบเป€เบ‚เบปเบฒเบกเบตเบญเบฒเบเบธเป€เบ—เบปเปˆเบฒเบ—เบฝเบกเบเบฑเบ™ 0 เบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™. (เป„เบ”เป‰ เบกเบตเบขเบนเปˆ() เบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เบเปˆเบญเบ™
(เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰, เบžเบฒเบ เบเบณเบ™เบปเบ”เป„เบงเป‰เบฅเปˆเบงเบ‡เปœเป‰เบฒ FUNCTIONS) เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ—เบปเบ”เบชเบญเบšเบขเปˆเบฒเบ‡เบŠเบฑเบ”เป€เบˆเบ™เบงเปˆเบฒ a
เป„เบŸเบฅเปŒเบกเบตเบขเบนเปˆ).

o a เป€เบเบปเปˆเบฒเบเบงเปˆเบฒเป€เบเบปเปˆเบฒ b: turns 1 if file a เป€เบเบปเปˆเบฒเบเบงเปˆเบฒเป„เบŸเบฅเปŒ b. เบ•เบปเบงเบขเปˆเบฒเบ‡: "libprog.a" เป€เบเบปเปˆเบฒเบเบงเปˆเบฒเป€เบเบปเปˆเบฒ
"เปเบซเบผเปˆเบ‡.o". เป„เบŸเบฅเปŒ a เปเบฅเบฐ b เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบต: เบ–เป‰เบฒเบ—เบฑเบ‡เบชเบญเบ‡เบšเปเปˆเบกเบต 0 เปเบกเปˆเบ™
เบเบฑเบšเบ„เบทเบ™; เบ–เป‰เบฒ a เบšเปเปˆเบกเบต, 1 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™; เบ–เป‰เบฒ b เบšเปเปˆเบกเบต 0 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™; เบ–เป‰เบฒ
เบžเบงเบโ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบกเบตโ€‹เบญเบฒโ€‹เบเบธโ€‹เป€เบ—เบปเปˆเบฒโ€‹เบ—เบฝเบกโ€‹เบเบฑเบ™ 0 เบ–เบทเบโ€‹เบเบฑเบšโ€‹เบ„เบทเบ™.

o []: เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ”เบฑเบ”เบชเบฐเบ™เบตเบ”เบถเบ‡เป€เบญเบปเบฒเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบˆเบฒเบเบ•เบปเบงเปเบ›เบชเบฐเบ•เบฃเบดเบ‡ เบซเบผเบทเบ„เบปเบ‡เบ—เบตเปˆ: เบกเบฑเบ™
เบ•เบญเบšเบชเบฐเบ•เบฃเบดเบ‡เป€เบ›เบฑเบ™ เบกเบนเบ™เบ„เปˆเบฒ. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบฅเบงเบšเบฅเบงเบก OK:

// เบชเบปเบกเบกเบธเบ”เบงเปˆเบฒ str1 เปเบฅเบฐ str2 เปเบกเปˆเบ™เบชเบฐเบ•เบฃเบดเบ‡
str1 = str2[3];

เปเบ•เปˆเบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบˆเบฐเบšเปเปˆเบฅเบงเบšเบฅเบงเบก:

str2[3] = "a";

เบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™เบ–เป‰เบฒเบ„เปˆเบฒเบ”เบฑเบ”เบชเบฐเบ™เบตเบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบ–เบทเบเบชเบฐเปœเบญเบ‡เปƒเบซเป‰.

o เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ `backtic` (`เบชเบฒเบ cmd`)
เบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบงเบฒเบ‡เป„เบงเป‰เบฅเบฐเบซเบงเปˆเบฒเบ‡เบชเบญเบ‡ backticks เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบ popen(3) เบซเบ™เป‰เบฒเบ—เบตเปˆ. เป„เบ”เป‰
เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ gererated เป‚เบ”เบเบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™ string argument เปเบกเปˆเบ™
เบเบฑเบšเบ„เบทเบ™เบกเบฒเป€เบ›เบฑเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ. เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบ„เปเบฒเบชเบฑเปˆเบ‡เบšเปเปˆเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰.
เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ›เบฐเบ•เบดเบšเบฑเบ”เป„เบ”เป‰เปเบ•เปˆเบšเปเปˆเป„เบ”เป‰เบœเบฐเบฅเบดเบ”เบœเบปเบ™เบœเบฐเบฅเบดเบ”เปƒเบ”เป†เบชเบปเปˆเบ‡เบ„เบทเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ
เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ. เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ‚เบญเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡เบเบฒเบ™เบ–เปˆเบฒเบเบ—เบญเบ”เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบšเปเปˆเปเบกเปˆเบ™
เป€เบเบฑเบšเบเปเบฒเป‚เบ”เบเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ backtick. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบเบฒเบ™เบ›เปˆเบฝเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เปเบเบฐเบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™
เปƒเบŠเป‰เป€เบžเบทเปˆเบญเป€เบเบฑเบšเบเบณเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบชเบฐเบ•เบฃเบตเบกเบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡:

printf(`"ls"`); // เบžเบดเบกเบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™
// เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ›เบฐเบˆเบธเบšเบฑเบ™

เบซเบ™เป‰เบฒเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เบฅเปˆเบงเบ‡เบซเบ™เป‰เบฒ eval(string cmd) เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบปเบงเบ„เบทเบเบฑเบš backtick
operator: เบžเบงเบเบกเบฑเบ™เปเบกเปˆเบ™เบ„เปเบฒเบชเบฑเบšเบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™.

เบžเบดเบกเบฅเบฒเบเบเบฒเบ™ เป‚เบ•เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™:

เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เบ›เบฐเป€เบžเบ”เบ•เบปเบงเปเบ› เปเบฅเบฐ/เบซเบผเบทเบ„เปˆเบฒเบ‚เบญเบ‡เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบกเปˆเบ™เบกเบตเบขเบนเปˆ:

o a + b: เบเบฑเบšเบ„เบทเบ™เบกเบฒเปƒเปเปˆ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เบกเบนเบ™โ€‹เบ„เปˆเบฒโ€‹เบ—เบตเปˆโ€‹เบ›เบฐโ€‹เบเบญเบšโ€‹เบ”เป‰เบงเบ concatenation เบ‚เบญเบ‡โ€‹ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เบ„เปˆเบฒ a เปเบฅเบฐ
b. เบ™เบตเป‰โ€‹เปเบกเปˆเบ™ เบšเปเปˆ เบเบฒเบ™โ€‹เบ”เปเบฒโ€‹เป€เบ™เบตเบ™โ€‹เบ‡เบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป„เบงเป‰โ€‹: เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบญเบปเบ‡โ€‹เบ›เบฐโ€‹เบเบญเบšโ€‹เบ›เบฐโ€‹เบเบปเบ”โ€‹เบงเปˆเบฒโ€‹เบ—เบฑเบ‡โ€‹เบชเบญเบ‡โ€‹เปƒเบ™โ€‹ a เปเบฅเบฐเปƒเบ™ b, เบžเบงเบโ€‹เป€เบ‚เบปเบฒโ€‹เบˆเบฐ
เบ›เบฒเบเบปเบ”เบชเบญเบ‡เบ„เบฑเป‰เบ‡เปƒเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบš (เบŠเบธเบ”เป€เบžเบตเปˆเบกเปเบกเปˆเบ™เบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เป‚เบ”เบ built-in
เบซเบ™เป‰เบฒเบ—เบตเปˆ เบฅเบฒเบเบเบฒเบ™).

o a - b: เบเบฑเบšเบ„เบทเบ™เบกเบฒเปƒเปเปˆ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เบ„เปˆเบฒเบ—เบตเปˆเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™ a เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เบกเบต
in b. เบ™เบตเป‰ is เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡: เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เบกเบตเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบฑเบ‡เบซเบกเบปเบ”
in a เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ‚เบญเบ‡ b.

o a += b: เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™ b เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™ a, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบ•เป‰เบญเบ‡เป€เบ›เบฑเบ™ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ
เบ•เบปเบงเปเบ›. เบ™เบตเป‰โ€‹เปเบกเปˆเบ™ เบšเปเปˆ เบเบฒเบ™โ€‹เบ”เปเบฒโ€‹เป€เบ™เบตเบ™โ€‹เบ‡เบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป„เบงเป‰โ€‹.

o a -= b: เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™ b เบ–เบทเบเป‚เบเบเบเป‰เบฒเบเบญเบญเบเบˆเบฒเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™ a, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบ•เป‰เบญเบ‡เป€เบ›เบฑเบ™ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ
เบ•เบปเบงเปเบ›. เบ™เบตเป‰ is เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰: เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบฑเบ‡เบซเบกเบปเบ”เบ‚เบญเบ‡ a เบ—เบตเปˆเบžเบปเบšเป€เบซเบฑเบ™เบขเบนเปˆเปƒเบ™ b เบกเบต
เป€เบญเบปเบฒโ€‹เบญเบญเบโ€‹เบˆเบฒเบ a.

o เบฅเบฒเบเบŠเบทเปˆเบเบฒเบ™เบ›เบฝเบšเบ—เบฝเบšเบ„เบงเบฒเบกเบชเบฐเป€เบซเบกเบตเบžเบฒเบš: เบœเบนเป‰เบ›เบฐเบเบญเบšเบเบฒเบ™ != เปเบฅเบฐ == เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบเบฑเบš เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เบ„เบธเบ™โ€‹เบ„เปˆเบฒโ€‹เบซเบผเบทโ€‹
เบ•เบปเบงเปเบ›. เบœเบนเป‰เบ›เบฐเบเบญเบšเบเบฒเบ™ == เบ•เบญเบš 1 เบ–เป‰เบฒเบ—เบฑเบ‡เบชเบญเบ‡เบฅเบฒเบเบเบฒเบ™เบกเบตเบญเบปเบ‡เบ›เบฐเบเบญเบšเป‚เบ”เบเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ„เบทเบเบฑเบ™
เบญเบปเบ‡เบ›เบฐเบเบญเบš, เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ 0 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™. เบœเบนเป‰เบ›เบฐเบเบญเบšเบเบฒเบ™ != เบ›เบตเป‰เบ™เบเบฑเบšเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบ‚เบญเบ‡ ==.

o !a: เบšเบนเบฅเบตเบ™ ! operator เบเบฑเบšเบ„เบทเบ™ 1 เบ–เป‰เบฒ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ a เปเบกเปˆเบ™เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ, เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ 0 เปเบกเปˆเบ™
เบเบฑเบšเบ„เบทเบ™เบกเบฒ.

o []: เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ”เบฑเบ”เบชเบฐเบ™เบตเบ”เบถเบ‡เป€เบญเบปเบฒเบญเบปเบ‡เบ›เบฐเบเบญเบšเบฅเบฒเบเบŠเบทเปˆเบˆเบฒเบเบ•เบปเบงเปเบ›เบฅเบฒเบเบŠเบทเปˆ: เบกเบฑเบ™เบชเบปเปˆเบ‡เบ„เบทเบ™ a
string เป€เบ›เบฑเบ™ เบกเบนเบ™เบ„เปˆเบฒ. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบฅเบงเบšเบฅเบงเบก OK:

// assume lst is a list, str เป€เบ›เบฑเบ™ string
str = lst[3];

เปเบ•เปˆเบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰เบˆเบฐเบšเปเปˆเบฅเบงเบšเบฅเบงเบก:

lst[3] = str;

เบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™เบ–เป‰เบฒเบ„เปˆเบฒเบ”เบฑเบ”เบชเบฐเบ™เบตเบ—เบตเปˆเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบ–เบทเบเบชเบฐเปœเบญเบ‡เปƒเบซเป‰.

เปเบกเปˆเบžเบดเบกเบชเปเบฒเบฅเบฑเบš:

เบ›เบฐเป€เบžเบ”เบชเบฝเบ‡เป‚เบซเบงเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เป‚เบ”เบเปƒเบŠเป‰เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ C cast-operator เป€เบžเบทเปˆเบญเบชเบปเปˆเบ‡เบชเบฑเบ™เบเบฒเบ™:

o Strings เบเบฑเบš ints เปเบฅเบฐเปƒเบ™เบ—เบฒเบ‡เบเบฑเบšเบเบฑเบ™ ((int)"123", (string)55)

o Strings เบเบฑเบšเบฅเบฒเบเบเบฒเบ™ (เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เบญเบฑเบ™เบ”เบฑเบšเบ—เบต = (เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ) "เบชเบฐเบšเบฒเบเบ”เบต")

เบญเบฑเบ”เบ•เบฒเบเบฒเบ™เป„เบซเบฅ เบเบฒเบ™เบ„เบงเบšเบ„เบธเบก


Icmake เบชเบฐเป€เบซเบ™เบตเบŠเบธเบ”เบเปˆเบญเบเบ•เปเปˆเป„เบ›เบ™เบตเป‰เบ‚เบญเบ‡ Cเบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบ‚เบญเบ‡. เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบ›เบฑเบ™เปƒเบ™ C
เบžเบฒเบชเบฒเป‚เบ›เบฅเปเบเบฅเบก

o เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ ;
เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ—เปเบฒเบกเบฐเบ”เบฒ;

o เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบ›เบฐเบชเบปเบก
เบ•เบปเบงเปเบ›เบ‚เบญเบ‡เบ›เบฐเป€เบžเบ”เปƒเบ” เปœเบถเปˆเบ‡ เบญเบฒเบ”เบˆเบฐเบ–เบทเบ เบเบณ เบ™เบปเบ”เปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบขเบนเปˆเบšเปˆเบญเบ™เปƒเบ”เบเปเปˆเบ•เบฒเบกเบžเบฒเบเปƒเบ™เบชเบฒเบ™เบ›เบฐเบชเบปเบก
เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™. เป„เบ”เป‰ เบเบฒเบ™เป€เบšเบดเปˆเบ‡เป€เบซเบฑเบ™ เบ‚เบญเบ‡เบ•เบปเบงเปเบ›เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบขเบนเปˆเปƒเบ™เบˆเบธเบ”เบ‚เบญเบ‡เบ„เปเบฒเบ™เบดเบเบฒเบกเบ‚เบญเบ‡เบกเบฑเบ™.

o if (เบชเบฐเบžเบฒเบš) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ
เบžเบฒเบเปƒเบ™เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ•เบปเบงเปเบ›เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบเปเบฒเบ™เบปเบ”เปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡:

เบ–เป‰เบฒ (string str = getText())
เบ‚เบฐเบšเบงเบ™เบเบฒเบ™(str);

เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ™เบตเป‰, เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ เบšเปเปˆเป„เบ”เป‰เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒ getText () เบ•เบญเบšเบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ. เป„เบ”เป‰
เบ•เบปเบงเปเบ› str เบšเปเปˆเบกเบตเบ—เบฑเบ‡เบเปˆเบญเบ™เบซเบผเบทเบซเบผเบฑเบ‡เบˆเบฒเบ if เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ.

o if (เบชเบฐเบžเบฒเบš) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ เบญเบทเปˆเบ™ เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ
เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เบžเบฒเบเปƒเบ™เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ•เบปเบงเปเบ›เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบเปเบฒเบ™เบปเบ”เปเบฅเบฐ
เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.

o เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ (เปƒเบ™โ€‹เบกเบฑเบ™; เบชเบฐเบžเบฒเบš; เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ
เบ•เบปเบงเปเบ› (เบ‚เบญเบ‡เบ›เบฐเป€เบžเบ”เบ”เบฝเบง) เบญเบฒเบ”เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ (เปเบฅเบฐเป€เบฅเบทเบญเบเบ—เบฒเบ‡เป€เบฅเบทเบญเบ) เปƒเบ™
เปƒเบ™โ€‹เบกเบฑเบ™ เบžเบฒเบเบชเปˆเบงเบ™. เป„เบ”เป‰ เปƒเบ™โ€‹เบกเบฑเบ™, เบชเบฐเบžเบฒเบš เปเบฅเบฐ เบเบฒเบ™เป€เบžเบตเปˆเบกเบ‚เบทเป‰เบ™ เบžเบฒเบเบชเปˆเบงเบ™เบญเบฒเบ”เบˆเบฐเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ. เป„เบ”เป‰
เบžเบฒเบเบชเปˆเบงเบ™เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบ–เบทเบเบ•เบตเบ„เบงเบฒเบกเบงเปˆเบฒ 'เบชเบฐเป€เบซเบกเบต เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡'.

o เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ (เบชเบฐเบžเบฒเบš) เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ
เบžเบฒเบเปƒเบ™เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ•เบปเบงเปเบ›เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบเปเบฒเบ™เบปเบ”เปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.
เบเบฒเบ™เป€เบชเบตเบก do ... เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ () เบšเปเปˆเบกเบตเปƒเบšเบ›เบฐเบเบฒเบ”. เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเบเบฒเบ™เบเปเบฒเบ™เบปเบ” a
เบ•เบปเบงเปเบ›, เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เปเบ•เปˆเบฅเบฐ iteration เบ‚เบญเบ‡ เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰
เบ„เปเบฒโ€‹เบ–เบฐโ€‹เปเบซเบผเบ‡โ€‹เบเบฒเบ™โ€‹เบˆเบฐโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบ—เบตเปˆโ€‹เบชเบดเป‰เบ™โ€‹เบชเบธเบ”โ€‹, เปเบฅเบฐโ€‹เบˆเบฐโ€‹เบชเบฐโ€‹เปเบ”เบ‡โ€‹เบ™โ€‹เป‰โ€‹เปโ€‹เบฒโ€‹เบ—เบตเปˆโ€‹เบšเปเปˆโ€‹เบกเบตโ€‹เบ—เบตเปˆโ€‹เบชเบดเป‰เบ™โ€‹เบชเบธเบ”โ€‹เบ‚เบญเบ‡โ€‹เบ„เบธเบ™โ€‹เบ„เปˆเบฒ 10โ€‹:

เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ (int x = 10)
printf(x--, "\n");

o เบเบฑเบšเบกเบฒ;, เปเบฅเบฐ เบเบฒเบ™เบเบฑเบšเบ„เบทเบ™เบกเบฒ เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ;
เบ—เปเบฒเบกเบฐเบ”เบฒ เบเบฒเบ™เบเบฑเบšเบ„เบทเบ™เบกเบฒ เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™ void เบซเบ™เป‰เบฒเบ—เบตเปˆ, เปเบฅเบฐ เบเบฒเบ™เบเบฑเบšเบ„เบทเบ™เบกเบฒ เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ
เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เบ›เบฐเป€เบžเบ”เบญเบทเปˆเบ™เป†เบ‚เบญเบ‡เบซเบ™เป‰เบฒเบ—เบตเปˆ. เบซเบ™เป‰เบฒเบ—เบตเปˆ เบ•เบปเป‰เบ™เบ•เป เบกเบตเบ›เบฐเป€เบžเบ”เบเบฑเบšเบ„เบทเบ™
void เปเบฅเบฐเบญเบทเปˆเบ™เป†เปƒเบ™ เบ•เบปเป‰เบ™เบ•เป เบ—เบปเปˆเบ‡เบžเบฝเบ‡ เบเบฒเบ™เบเบฑเบšเบ„เบทเบ™เบกเบฒ เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป„เบ”เป‰. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™ icmake
เบ„เปˆเบฒเบญเบญเบเบ‚เบญเบ‡เบชเบฐเบ„เบฃเบดเบšเป€เบ—เบปเปˆเบฒเบเบฑเบš 0. เปƒเบŠเป‰เบŸเบฑเบ‡เบŠเบฑเบ™เปƒเบ™เบ•เบปเบง เบเบฒเบ™เบ—เปˆเบญเบ‡เบ—เปˆเบฝเบง (เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰) เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”
เบ„เปˆเบฒเบ—เบฒเบ‡เบญเบญเบเบญเบทเปˆเบ™เป†.

Be เปเบ™เบฐเบ™เบณ: เบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™ void เบ—เบตเปˆเบšเปเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เบ„เปˆเบฒเปเบกเปˆเบ™เบšเปเปˆเป„เบ”เป‰เบเปเบฒเบ™เบปเบ”.

o เบžเบฑเบเบœเปˆเบญเบ™
เปƒเบš เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ เปเบฅเบฐ เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™, overruing เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ‚เบญเบ‡เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™.

o เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ•เปเปˆ
เบชเบทเบšเบ•เปเปˆเบ”เป‰เบงเบ iteration เบ•เปเปˆเป„เบ›เบ‚เบญเบ‡ a เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ or เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ เบ„เปเบฒเบ–เบฐเปเบซเบผเบ‡เบ—เบตเปˆ.

o เบญเบญเบ(เบชเบฐเปเบ”เบ‡เบญเบญเบ)
เบชเบดเป‰เบ™เบชเบธเบ”เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡ an icmake-script. เป„เบ”เป‰ เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ เบ•เป‰เบญเบ‡โ€‹เบ›เบฐโ€‹เป€เบกเบตเบ™โ€‹เบœเบปเบ™โ€‹เป€เบ›เบฑเบ™โ€‹ int
เบ„เปˆเบฒ, เป€เบŠเบดเปˆเบ‡เบเบฒเบเป€เบ›เบฑเบ™เบ„เปˆเบฒเบญเบญเบเบ‚เบญเบ‡เบชเบฐเบ„เบฃเบดเบš.

เบเบณเบ™เบปเบ”เป„เบงเป‰เบฅเปˆเบงเบ‡เปœเป‰เบฒ FUNCTIONS


Icmake เบชเบฐเป€เบซเบ™เบตเบซเบ™เป‰เบฒเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เบฅเปˆเบงเบ‡เบซเบ™เป‰เบฒเบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰, เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เป„เบ”เป‰เบ—เบธเบเบšเปˆเบญเบ™เปƒเบ™ icmake
เบชเบฐเบ„เบฃเบดเบš. เบžเบฒเบšเบฅเบงเบกเบ•เปเปˆเป„เบ›เบ™เบตเป‰เปเบกเปˆเบ™เบˆเบฑเบ”เบฅเบณเบ”เบฑเบšเบ•เบฒเบกเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ•เบฒเบกเบŠเบทเปˆเบŸเบฑเบ‡เบŠเบฑเบ™.

o void Arghead(string h)
เบซเบ™เป‰เบฒเบ—เบตเปˆเบœเบนเป‰เบŠเปˆเบงเบเบ‚เบญเบ‡ exec() (เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบขเบนเปˆเบ—เบตเปˆ exec()): เบเปเบฒเบ™เบปเบ” 'เบซเบปเบงเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡',
เบ—เบตเปˆเบˆเบฐเบ™เปเบฒเปƒเบŠเป‰เบเบฑเบš exec(). เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, 'เบซเบปเบงเบญเบฒเบเบดเบงเป€เบกเบฑเบ™' เปเบกเปˆเบ™เบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ.

o void เบซเบฒเบ‡ (เบชเบฒเบ t)
เบซเบ™เป‰เบฒเบ—เบตเปˆเบœเบนเป‰เบŠเปˆเบงเบเบ‚เบญเบ‡ exec() (เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบขเบนเปˆเบ—เบตเปˆ exec()): เบเปเบฒเบ™เบปเบ” 'เบซเบฒเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡',
เบ—เบตเปˆเบˆเบฐเบ™เปเบฒเปƒเบŠเป‰เบเบฑเบš exec(). เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, 'เบซเบฒเบ‡เบ‚เบญเบ‡เบญเบฒเบเบดเบงเป€เบกเบฑเบ™' เปเบกเปˆเบ™เบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ.

o int ascii(string s)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบณเบญเบดเบ”เบ‚เบญเบ‡ s เป€เบ›เบฑเบ™ int; เบ•เบปเบงเบขเปˆเบฒเบ‡: ascii("A") เบเบฑเบšเบ„เบทเบ™ 65;

o string ascii(int i)
เบœเบปเบ™เบ•เบญเบšเปเบ—เบ™ i เป€เบ›เบฑเบ™ string, eg, ASCII(65โ€‹) เบ•เบญเบšเบชเบฐเบ•เบฃเบดเบ‡ "TO";

o string change_base(string เปเบŸเป‰เบก, string เบ–เบฒเบ™โ€‹เปƒเบซเบกเปˆ)
เบ›เปˆเบฝเบ™เบŠเบทเปˆเบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡ เป€เบญเบเบฐเบชเบฒเบ™, เบชเบปเปˆเบ‡เบ„เบทเบ™เบŠเบทเปˆเบ—เบตเปˆเบ›เปˆเบฝเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡:
change_base("/path/demo.im", "เบญเบญเบ") เบเบฑเบšเบ„เบทเบ™เบกเบฒ "/path/out.im";

o string change_ext(string เปเบŸเป‰เบก, string เปƒเปเปˆเบ•เปเปˆเป„เบ›)
เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ‚เบญเบ‡ เป€เบญเบเบฐเบชเบฒเบ™, เบชเบปเปˆเบ‡เบ„เบทเบ™เบŠเบทเปˆเบ—เบตเปˆเบ›เปˆเบฝเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡:
rss_changeExt("source.cc", "o") เบเบฑเบšเบ„เบทเบ™เบกเบฒ "เปเบซเบผเปˆเบ‡.o";

o string change_path(string เปเบŸเป‰เบก, string เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เปƒเปเปˆ)
เบ›เปˆเบฝเบ™เปเบ›เบ‡เบชเบฐเป€เบžเบฒเบฐเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบ‚เบญเบ‡ เป€เบญเบเบฐเบชเบฒเบ™, เบชเบปเปˆเบ‡เบ„เบทเบ™เบŠเบทเปˆเบ—เบตเปˆเบ›เปˆเบฝเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡:
change_path("tmp/binary", "/ usr / เบ–เบฑเบ‡") เบเบฑเบšเบ„เบทเบ™เบกเบฒ "/usr/bin/binary". เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒ
/-separator เปเบกเปˆเบ™ inserted เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹.

o string chdir(string newdir)
เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบชเบฐเบ„เบฃเบดเบš, เบชเบปเปˆเบ‡เบ„เบทเบ™ dir เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒเป€เบ›เบฑเบ™เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡
เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡

เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ chdir(".") เป€เบžเบทเปˆเบญโ€‹เปƒเบซเป‰โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เป€เบฎเบฑเบ”โ€‹เบงเบฝเบโ€‹เปƒเบ™โ€‹เบ›เบฑเบ”โ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹, chdir("") เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญ
เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹เบเบฒเบ™โ€‹เป€เบฎเบฑเบ”โ€‹เบงเบฝเบโ€‹เบฅเบฐโ€‹เบšเบปเบš (เบเบฒเบ™โ€‹เบ—เปเบฒโ€‹เบ‡เบฒเบ™โ€‹เบ™เบตเป‰โ€‹เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เปเบเบโ€‹เบญเบญเบโ€‹เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบ›เปˆเบญเบโ€‹
เบเปˆเบญเบ™ 7.00, เปเบ•เปˆเบ›เบฐเบˆเบธเบšเบฑเบ™เป„เบ”เป‰เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™). เบŸเบฑเบ‡เบŠเบฑเบ™เบขเบธเบ”เบเบฒเบ™
icmake-script เบ–เป‰เบฒโ€‹เบซเบฒเบโ€‹เบงเปˆเบฒโ€‹เบฅเบฐโ€‹เบšเบธโ€‹เป„เบงเป‰โ€‹ เปƒเปเปˆ เบšเปเปˆเบกเบตเบขเบนเปˆ

o string chdir(int เบเบฒเบ™โ€‹เบเบงเบ”โ€‹เบชเบญเบšโ€‹, string newdir)
เบซเบ™เป‰เบฒเบ—เบตเปˆเบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบ•เปˆเป‚เบ”เบเบเบฒเบ™เบฅเบฐเบšเบธ เบเบฒเบ™เบเบงเบ”เบชเบญเบš as
P_NOCHEC. เบŸเบฑเบ‡เบŠเบฑเบ™เบˆเบฐเบšเปเปˆเบขเบธเบ”เบชเบฐเบ„เบฃเบดเบš. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ, เบกเบฑเบ™เบˆเบฐเบเบฑเบšเบ„เบทเบ™เบกเบฒ
script เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™.

o cmdhead(string h)
เบซเบ™เป‰เบฒเบ—เบตเปˆเบœเบนเป‰เบŠเปˆเบงเบเบ‚เบญเบ‡ exec() (เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบขเบนเปˆเบ—เบตเปˆ exec()): เบเปเบฒเบ™เบปเบ”เป€เบ›เบฑเบ™ 'เบซเบปเบงเบ„เปเบฒเบชเบฑเปˆเบ‡', to
เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบเบฑเบš exec(). เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, 'เบซเบปเบงเบ„เปเบฒเบชเบฑเปˆเบ‡' เปเบกเปˆเบ™เบชเบฒเบเบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ.

o cmdtail(string t)
เบซเบ™เป‰เบฒเบ—เบตเปˆเบœเบนเป‰เบŠเปˆเบงเบเบ‚เบญเบ‡ exec() (เป€เบšเบดเปˆเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰เบขเบนเปˆเบ—เบตเปˆ exec()): เบเปเบฒเบ™เบปเบ”เป€เบ›เบฑเบ™ 'เบซเบฒเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡', to
เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบเบฑเบš exec(). เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™, 'เบซเบฒเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡' เปเบกเปˆเบ™เบชเบฒเบเบ—เบตเปˆเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ.

o echo(int เป€เบฅเบทเบญเบ)
เบเบฒเบ™โ€‹เบ„เบงเบšโ€‹เบ„เบธเบก echoing เบ‚เบญเบ‡โ€‹เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹เป€เบญเบตเป‰เบ™โ€‹เบงเปˆเบฒ (เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เป‚เบ•เป‰โ€‹เบ–เบฝเบ‡โ€‹เบ‚เบญเบ‡โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹)โ€‹, เบฅเบฐโ€‹เบšเบธโ€‹ OFF เบ–เป‰เบฒเบชเบฝเบ‡เบ”เบฑเบ‡
เบšเปเปˆเป„เบ”เป‰เบฎเป‰เบญเบ‡เบ‚เป. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™ เบชเบฝเบ‡เบชเบฐเบ—เป‰เบญเบ™(ON) เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰.

o string เบญเบปเบ‡เบ›เบฐเบเบญเบš(int เบ”เบฑเบ”เบชเบฐเบ™เบต, เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ (เบซเบผเบท เบชเบฐเบ•เบฃเบดเบ‡) var)
เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เบทเบเบฑเบ™เบเบฑเบšเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ”เบฑเบ”เบชเบฐเบ™เบต: เบญเป‰เบฒเบ‡เบญเบตเบ‡เปƒเบชเปˆเบ”เบฑเบ”เบŠเบฐเบ™เบต ([]) เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบเบฒเบ™โ€‹เปƒเบ™โ€‹
เบชเปˆเบงเบ™ เบœเบนเป‰เบ›เบฐเบเบญเบšเบเบฒเบ™.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ eval(string str)
เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เบทเบเบฑเบ™เบเบฑเบšเบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ backtick. เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰
เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™ backtick เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ‚เบฝเบ™เป„เบงเป‰เป€เบŠเบฑเปˆเบ™เบ™เบตเป‰:

printf(eval("ls")); // เบžเบดเบกเบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™
// เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบต

o exec(string cmd, ... )
เบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เปเบฒเบชเบฑเปˆเบ‡เบ”เป‰เบงเบเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡. เปเบ•เปˆเบฅเบฐเบญเบฒเบเบดเบงเป€เบกเบฑเบ™เบˆเบฐเบ–เบทเบเบ™เบณเปœเป‰เบฒเบ”เป‰เบงเบ Arghead()'s
argument เปเบฅเบฐ postfixed เป‚เบ”เบ เบซเบฒเบ‡()เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ‚เบญเบ‡. เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเบšเปเปˆเบกเบตเบเบฒเบ™เปƒเบชเปˆเบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡
เบฅเบฐเบซเบงเปˆเบฒเบ‡ Arghead()เป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡, เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบก, เปเบฅเบฐ เบซเบฒเบ‡()เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ‚เบญเบ‡. เบ—เบฑเบ‡เปเบปเบ”
เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เบตเปˆเบ–เบทเบเบ”เบฑเบ”เปเบ›เบ‡เปเบกเปˆเบ™ concatenated, เป€เบงเบฅเบฒเบ™เบตเป‰เปเบเบเบญเบญเบเป‚เบ”เบเบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡เบ”เบฝเบง, เปเบฅเบฐ
เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ cmdhead()เป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡เบ–เบทเบเปƒเบชเปˆเบฅเบฐเบซเบงเปˆเบฒเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡เปเบฅเบฐเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เปเบฒเบญเบดเบ”
(เบขเบนเปˆเบ”เป‰เบฒเบ™เปƒเบ”เบ”เป‰เบฒเบ™เปœเบถเปˆเบ‡เบ—เบตเปˆเบ‚เบฑเป‰เบ™เบ”เป‰เบงเบเบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡เบ”เบฝเบง) เปเบฅเบฐ cmdtail()เป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡เปเบกเปˆเบ™เป„เบ”เป‰เบ•เปเปˆเบ—เป‰เบฒเบ
เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡ (เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡, เปเบเบเบญเบญเบเป‚เบ”เบเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ). PATH เบ–เบทเบเบ„เบปเป‰เบ™เบซเบฒเป€เบžเบทเปˆเบญเบŠเบญเบเบซเบฒเบชเบฐเบ–เบฒเบ™เบ—เบตเปˆ
cmd. 0 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™.

o exec(int checkcmd, string cmd, ... )
เบซเบ™เป‰เบฒเบ—เบตเปˆเบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบ•เปˆเป‚เบ”เบเบเบฒเบ™เบฅเบฐเบšเบธ เบเบฒเบ™เบเบงเบ”เบชเบญเบš as
เบšเปเปˆเป„เบ”เป‰เบเบงเบ”เป€เบšเบดเปˆเบ‡ เบŸเบฑเบ‡เบŠเบฑเบ™เบˆเบฐเบšเปเปˆเบขเบธเบ”เบชเบฐเบ„เบฃเบดเบš. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ, เบกเบฑเบ™เบˆเบฐเบเบฑเบšเบ„เบทเบ™เบกเบฒ
เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบญเบญเบเบ„เปเบฒเบชเบฑเปˆเบ‡, เบซเบผเบท 0x7f00 เบ–เป‰เบฒเบšเปเปˆเบžเบปเบšเบ„เปเบฒเบชเบฑเปˆเบ‡.

o execute(string cmd, string cmdhd, string Arghd, ..., string argtl, string cmdtl)
เบ„เบทโ€‹เบเบฑเบ™โ€‹เบเบฑเบš exec(), เปเบ•เปˆเบ•เป‰เบญเบ‡เบฅเบฐเบšเบธเบซเบปเบง/เบซเบฒเบ‡ เปเบฅเบฐเบซเบปเบง/เบซเบฒเบ‡ argument.

เบ„เปเบฒเบชเบฑเปˆเบ‡เบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบปเบงเบˆเบดเบ‡เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ cmd, เบ•เบฒเบกเบ”เป‰เบงเบ cmdhd. เบ•เปเปˆเป„เบ›เปเบกเปˆเบ™เบŠเบธเบ”
เบ‚เบญเบ‡เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰, เปเบ•เปˆเบฅเบฐเบ›เบดเบ”เบฅเป‰เบญเบกเป‚เบ”เบ arghd เปเบฅเบฐ argtl. เบ„เปเบฒเบชเบฑเปˆเบ‡เบชเบดเป‰เบ™เบชเบธเบ”เบฅเบปเบ‡เบ”เป‰เบงเบ
cmdtl. 0 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™

o เบ›เบฐเบ•เบดเบšเบฑเบ”(int เบเบฒเบ™โ€‹เบเบงเบ”โ€‹เบชเบญเบšโ€‹, string cmd, string cmdhd, string Arghd, ..., string argtl,
string cmdtl)
เบซเบ™เป‰เบฒเบ—เบตเปˆเบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบ•เปˆเป‚เบ”เบเบเบฒเบ™เบฅเบฐเบšเบธ เบเบฒเบ™เบเบงเบ”เบชเบญเบš as
เบšเปเปˆเป„เบ”เป‰เบเบงเบ”เป€เบšเบดเปˆเบ‡ เบŸเบฑเบ‡เบŠเบฑเบ™เบˆเบฐเบšเปเปˆเบขเบธเบ”เบชเบฐเบ„เบฃเบดเบš. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ, เบกเบฑเบ™เบˆเบฐเบเบฑเบšเบ„เบทเบ™เบกเบฒ
เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบญเบญเบเบ„เปเบฒเบชเบฑเปˆเบ‡, เบซเบผเบท 0x7f00 เบ–เป‰เบฒเบšเปเปˆเบžเบปเบšเบ„เปเบฒเบชเบฑเปˆเบ‡.

o int เบกเบตเบขเบนเปˆ(string เปเบŸเป‰เบก)
เบ•เบญเบšเบ„เปˆเบฒเบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เบชเบนเบ™ if เป€เบญเบเบฐเบชเบฒเบ™ เบกเบตเบขเบนเปˆ, เบ–เป‰เบฒเบšเปเปˆเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™ 0 เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ fgets(string เปเบŸเป‰เบก, เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เบŠเบปเบ”เป€เบŠเบตเบ)
เบซเบกเบฒเบโ€‹เป€เบซเบ”โ€‹: in icmake เบฎเบธเปˆเบ™ 8.00.00 เบ•เบปเป‰เบ™เปเบšเบšเบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™เบ™เบตเป‰เบ–เบทเบเบ›เปˆเบฝเบ™เบˆเบฒเบ
เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ fgets(string เปเบŸเป‰เบก, int เบŠเบปเบ”เป€เบŠเบตเบ) to เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ fgets(string เปเบŸเป‰เบก, เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เบŠเบปเบ”เป€เบŠเบตเบ).

เปเบ–เบงเบ•เปเปˆเป„เบ›เบ—เบตเปˆเบžเบปเบšเป€เบซเบฑเบ™เบขเบนเปˆเปƒเบ™ offset เบ—เบตเปˆเบกเบตเบขเบนเปˆเปƒเบ™ เบŠเบปเบ”เป€เบŠเบตเบ เปเบกเปˆเบ™เบญเปˆเบฒเบ™เบˆเบฒเบ เป€เบญเบเบฐเบชเบฒเบ™. เบœเปˆเบฒเบ™
เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบเบฑเบš fgets เบญเปˆเบฒเบ™ เป€เบญเบเบฐเบชเบฒเบ™ เบ•เบฑเป‰เบ‡เปเบ•เปˆเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.

เบกเบฑเบ™เบชเบปเปˆเบ‡เบ„เบทเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ—เบตเปˆเบšเบฑเบ™เบˆเบธเป€เบ›เบฑเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡เบกเบฑเบ™เป€เบ™เบทเป‰เบญเปƒเบ™เบ‚เบญเบ‡เปเบ–เบงเบ—เบตเปˆเบญเปˆเบฒเบ™
(เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™ \n line terminator), เป€เบ›เบฑเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเบชเบญเบ‡เบ‚เบญเบ‡เบกเบฑเบ™ terminator เบ‚เบญเบ‡เบชเบฒเบ `\n'
(เบ–เป‰เบฒเบžเบปเบš), เปเบฅเบฐเป€เบ›เบฑเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเบชเบฒเบกเบ‚เบญเบ‡เบกเบฑเบ™ string OK เบ–เป‰เบฒเป€เบชเบฑเป‰เบ™เป„เบ”เป‰เบชเปเบฒเป€เบฅเบฑเบ”
เบญเปˆเบฒเบ™, เบ›เบฐเบ•เบดเบšเบฑเบ” เบ–เป‰เบฒเบเบฒเบ™เบญเปˆเบฒเบ™เบˆเบฒเบเป„เบŸเบฅเปŒเบฅเบปเป‰เบกเป€เบซเบฅเบง. เป€เบกเบทเปˆเบญเบญเปˆเบฒเบ™เบขเบนเปˆ EOF เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเป€เบ›เบปเปˆเบฒเปเบกเปˆเบ™
เบเบฑเบšเบ„เบทเบ™. เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เบญเบฒเบ”เบˆเบฐเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบญเบปเบ‡เบ›เบฐเบเบญเบšเป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เป€เบŠเบดเปˆเบ‡เปเบกเปˆเบ™เบžเบฒเบเปƒเบ™
เปƒเบŠเป‰เป‚เบ”เบ fgets เป€เบกเบทเปˆเบญเบญเปˆเบฒเบ™เปเบ–เบงเบ•เปเปˆเป„เบ›.

เป€เบžเบทเปˆเบญเบญเปˆเบฒเบ™เบซเบผเบฒเบเปเบ–เบง, เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป‚เบ”เบเบเบฒเบ™เบ–เปˆเบฒเบเบ—เบญเบ”เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเป€เบ›เบปเปˆเบฒเป€เบ›เบฑเบ™ เป„เบ”เป‰โ€‹เบฎเบฑเบš เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เบตเบชเบญเบ‡.
เป€เบžเบทเปˆเบญเบญเปˆเบฒเบ™เปเบ–เบงเบ•เปเปˆเป„เบ›, เปƒเบซเป‰เบœเปˆเบฒเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ—เบตเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เป„เบ›เบซเบฒ fgets เบ‚เบญเบ‡ เบ„เบฑเป‰เบ‡เบ—เบตเบชเบญเบ‡
เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡.

เบ™เบตเป‰เปเบกเปˆเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เป€เบซเบฑเบ™เบงเบดเบ—เบตเบเบฒเบ™เบญเปˆเบฒเบ™เป„เบŸเบฅเปŒเบ—เบตเปˆเบชเบปเบกเบšเบนเบ™:

เบฅเบฒเบเบเบฒเบ™ ret;
เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ (1)
{
ret = fgets("เบŠเบทเปˆเป„เบŸเบฅเปŒ", ret);
เบ–เป‰เบฒ (!ret)
เบ—เปเบฒเบฅเบฒเบ;
เบ‚เบฐเบšเบงเบ™เบเบฒเบ™(ret[0], ret[1]);
}

o int fprintf(string เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™, ... )
เบ•เบทเปˆเบกเบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เปเบปเบ” (เปเบฒเบเบˆเบธเบ”เบ—เบตเปˆเปเบเบเบญเบญเบ) เบ•เปเปˆเบ—เป‰เบฒเบเบเบฑเบšเป„เบŸเบฅเปŒ เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™. เบ•เบญเบšเบˆเปเบฒเบ™เบงเบ™
เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เบตเปˆเบžเบดเบกเบญเบญเบ.

o int fprintf(string เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™, string เบฎเบนเบšเปเบšเบš, ... )
เบ•เบทเปˆเบกเบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เปเบปเบ” (เปเบฒเบเบˆเบธเบ”เบ—เบตเปˆเปเบเบเบญเบญเบ) เบ•เปเปˆเบ—เป‰เบฒเบเบเบฑเบšเป„เบŸเบฅเปŒ เบŠเบทเปˆโ€‹เป€เบญโ€‹เบเบฐโ€‹เบชเบฒเบ™. เบ•เบญเบšเบˆเปเบฒเบ™เบงเบ™
เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เบตเปˆเบžเบดเบกเบญเบญเบ.

If เบฎเบนเบšเปเบšเบš เบ›เบฐเบเบญเบšเบกเบตเบ•เบปเบงเบเบถเบ” %1 .. %n เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ–เบทเบเบˆเบฑเบ”เบฎเบนเบšเปเบšเบš (เป€เบšเบดเปˆเบ‡
เบฎเบนเบšเปเบšเบš). เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰เบเบฒเบ™เบ™เบฑเบšเบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡ (เบเบฑเบ‡) เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ™เบญเบเป€เบซเบ™เบทเบญเบˆเบฒเบ
format string: argument เบ—เปเบฒเบญเบดเบ”เบ•เปเปˆเป„เบ›เบ™เบตเป‰ เบฎเบนเบšเปเบšเบš เปเบกเปˆเบ™เบซเบกเบฒเบเป€เบ–เบดเบ‡ %1.

o string get_base(string เปเบŸเป‰เบก)
เบ•เบญเบšเบŠเบทเปˆเบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡ เป€เบญเบเบฐเบชเบฒเบ™. เบŠเบทเปˆเบžเบทเป‰เบ™เบ–เบฒเบ™เปเบกเปˆเบ™เป„เบŸเบฅเปŒเบ—เบตเปˆเบšเปเปˆเบกเบตเบ„เปเบฒเบ™เปเบฒเบซเบ™เป‰เบฒเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เบ‚เบญเบ‡เบกเบฑเบ™
เปเบฅเบฐเป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบ‚เบญเบ‡เบกเบฑเบ™. เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเปเบกเปˆเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบ™เบ•เบญเบ™เบชเบธเบ”เบ—เป‰เบฒเบ
เบˆเบธเบ”เปƒเบ™เบŠเบทเปˆเป„เบŸเบฅเปŒ. เบ–เป‰เบฒเบšเปเปˆเบžเบปเบšเบˆเบธเบ”เบชเบธเบ”เบ—เป‰เบฒเบ, เบŠเบทเปˆเป„เบŸเบฅเปŒเปเบกเปˆเบ™เบŠเบทเปˆเบžเบทเป‰เบ™เบ–เบฒเบ™.
เบ•เบปเบงเบขเปˆเบฒเบ‡, เบŠเบทเปˆเบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡ ab เป€เบ—เบปเปˆเบฒเบเบฑเบ™ a, เบŠเบทเปˆเบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡ abc เป€เบ—เบปเปˆเบฒเบเบฑเบ™ ab, เบ–เบฒเบ™
เบŠเบทเปˆเบ‚เบญเบ‡ a/b/c เป€เบ—เบปเปˆเบฒเบเบฑเบ™ c.

o string getch()
เบชเบปเปˆเบ‡เบ„เบทเบ™เบ›เบธเปˆเบกเบเบปเบ”เบ•เปเปˆเป„เบ›เป€เบ›เบฑเบ™เบชเบฐเบ•เบฃเบดเบ‡ (เบเบฒเบ™เบเบปเบ” 'Enter' เปเบกเปˆเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™).

o string get_dext(string เปเบŸเป‰เบก)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบชเปˆเบงเบ™เบ‚เบฐเบซเบเบฒเบเบ‚เบญเบ‡ เป€เบญเบเบฐเบชเบฒเบ™, เบฅเบงเบกเบ—เบฑเบ‡เบˆเบธเบ”เปเบเบ. เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเปเบกเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”
เบ‚เปเป‰เบกเบนเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบเบˆเบธเบ”เบชเบธเบ”เบ—เป‰เบฒเบเบ‚เบญเบ‡เบŠเบทเปˆเป„เบŸเบฅเปŒ.

เบ–เป‰เบฒเบšเปเปˆเบžเบปเบšเบˆเบธเบ”เบชเบธเบ”เบ—เป‰เบฒเบ, เบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ getenv(string envvar)
เบ•เบญเบšเบ„เปˆเบฒเบ‚เบญเบ‡เบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก envvar เปƒเบ™โ€‹เบฅเบฒเบโ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบชเบญเบ‡โ€‹เบญเบปเบ‡โ€‹เบ›เบฐโ€‹เบเบญเบšโ€‹:

เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เปเบฒเบญเบดเบ”เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเป„เบ”เป‰เบ–เบทเบเบเปเบฒเบ™เบปเบ” (เบ„เปˆเบฒ
"1") เบซเบผเบทโ€‹เบšเปเปˆ (เบ„เปˆเบฒ "0");
เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเบชเบญเบ‡เบŠเบตเป‰เปƒเบซเป‰เป€เบซเบฑเบ™เบกเบนเบ™เบ„เปˆเบฒเบ‚เบญเบ‡เบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก.

เบ•เบปเบงเปเบ›เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบกเบตเบฎเบนเบšเปเบšเบš variable=เบ„เปˆเบฒ, เปเบฅเบฐเบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบเปเบฒเบ™เบปเบ”เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡
เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ—เบตเบชเบญเบ‡เบ›เบฐเบเบญเบšเบ”เป‰เบงเบ เบกเบนเบ™เบ„เปˆเบฒ. เบ–เป‰เบฒเบ„เปˆเบฒเบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ, เบ•เบปเบงเปเบ›เปเบกเปˆเบ™เบ–เบทเบเบเปเบฒเบ™เบปเบ”, เปเบ•เปˆ
เบšเปเปˆเบกเบตเบ‚เปเป‰เบ„เบงเบฒเบกเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบกเบฑเบ™.

o string get_ext(string เปเบŸเป‰เบก)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบชเปˆเบงเบ™เบ‚เบฐเบซเบเบฒเบเบ‚เบญเบ‡ เป€เบญเบเบฐเบชเบฒเบ™, เบเบปเบเป€เบงเบฑเป‰เบ™เบˆเบธเบ”เบ—เบตเปˆเปเบเบเบญเบญเบ. เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเปเบกเปˆเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”
เบ‚เปเป‰เบกเบนเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบˆเบฒเบเบˆเบธเบ”เบชเบธเบ”เบ—เป‰เบฒเบเปƒเบ™เบŠเบทเปˆเป„เบŸเบฅเปŒ.

เบ–เป‰เบฒเบšเปเปˆเบžเบปเบšเบˆเบธเบ”เบชเบธเบ”เบ—เป‰เบฒเบ, เบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™.

o int getpid()
เบชเบปเปˆเบ‡เบ„เบทเบ™ process-id เบ‚เบญเบ‡เบ•เบปเบงเปเบ›เบฅเบฐเบซเบฑเบ” icmake byte icm-exec.

o string เป„เบ”เป‰เบฎเบฑเบš ()
เบชเบปเปˆเบ‡เบ„เบทเบ™เปเบ–เบงเบ•เปเปˆเป„เบ›เบ—เบตเปˆเบญเปˆเบฒเบ™เบˆเบฒเบเปเบ›เป‰เบ™เบžเบดเบกเป€เบ›เบฑเบ™ a string. เป€เบชเบฑเป‰เบ™เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบกเบฒเปƒเบ™
เปเบ›เป‰เบ™เบžเบดเบกเบ•เป‰เบญเบ‡เบ–เบทเบเบขเบธเบ”เป‚เบ”เบเบเบฐเปเบˆ 'Enter', เป€เบŠเบดเปˆเบ‡เบšเปเปˆเป„เบ”เป‰เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเป„เบงเป‰เปƒเบ™เบเบฒเบ™เบชเบปเปˆเบ‡เบ„เบทเบ™
string

o string get_path(string เปเบŸเป‰เบก)
เปƒเบซเป‰เบœเบปเบ™เป€เบ›เบฑเบ™ path-prefix เบ‚เบญเบ‡ เป€เบญเบเบฐเบชเบฒเบ™. เบ„เปเบฒเบ™เปเบฒเบซเบ™เป‰เบฒเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡เปเบกเปˆเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เป€เบ–เบดเบ‡ (เปเบฅเบฐ
เบฅเบงเบกเป€เบ–เบดเบ‡) เบ•เบปเบงเปเบเบเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบชเบธเบ”เบ—เป‰เบฒเบ (เบŠเบถเปˆเบ‡เปเบกเปˆเบ™, เบ‚เบถเป‰เบ™เบเบฑเบšเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™
เบฅเบฐเบšเบปเบš, เป€เบ›เบฑเบ™ forward- เบซเบผเบท backslash).

เบ–เป‰เบฒเบšเปเปˆเบžเบปเบšเป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡, เป€เบชเบฑเป‰เบ™เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™.

o int listfind(เบฅเบฒเบเบเบฒเบ™ เบ—เบณเบญเบดเบ”, string str)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบ”เบฑเบ”เบŠเบฐเบ™เบตเบ—เบณเบญเบดเบ”เปƒเบ™ เบญเบฑเบ™เบ”เบฑเบšเบ—เบต เบšเปˆเบญเบ™เบ—เบตเปˆเบŠเปˆเบญเบเปเบ™เปˆ str เบ–เบทเบเบžเบปเบšเป€เบซเบฑเบ™, เบซเบผเบท -1 เบ–เป‰เบฒ เบญเบฑเบ™เบ”เบฑเบšเบ—เบต เบšเปเปˆ
เบšเบฑเบ™เบˆเบธ str.

o int listlen(เบฅเบฒเบเบเบฒเบ™ l)
เบ•เบญเบšเบˆเปเบฒเบ™เบงเบ™เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ listunion(เบฅเบฒเบเบเบฒเบ™ lhs, เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ rhs)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบ—เบตเปˆเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบชเบฐเบซเบฐเบžเบฑเบ™เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™ lhs เปเบฅเบฐ rhs.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ listunion(เบฅเบฒเบเบเบฒเบ™ เบ—เบณเบญเบดเบ”, string str)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบ—เบตเปˆเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบชเบฐเบซเบฐเบžเบฑเบ™เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™ เบญเบฑเบ™เบ”เบฑเบšเบ—เบต เปเบฅเบฐ str.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ makelist(string เบซเบ™เป‰เบฒโ€‹เบเบฒเบ)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ—เบฑเบ‡เปเบปเบ”เบ—เบตเปˆเบเบปเบ‡เบเบฑเบ™ เบซเบ™เป‰เบฒเบเบฒเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡: เบฅเบฒเบเบŠเบทเปˆเบœเบนเป‰เบชเป‰เบฒเบ‡("*.c") เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆ
เบกเบตเป„เบŸเบฅเปŒเบ—เบฑเบ‡เปเบปเบ”เบ—เบตเปˆเบฅเบปเบ‡เบ—เป‰เบฒเบเบ”เป‰เบงเบ .c.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ makelist(เบ›เบฐโ€‹เป€เบžเบ”โ€‹, string เบซเบ™เป‰เบฒโ€‹เบเบฒเบ)
เบ„เบทเบเบฑเบ™เบเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบ•เปˆเบ›เบฐเป€เบžเบ”เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ‚เบญเบ‡เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบญเบฒเบ”เบˆเบฐเป€เบ›เบฑเบ™
เบฅเบฐเบšเบธเป€เบ›เบฑเบ™เบเบฒเบ™เป‚เบ•เป‰เบ–เบฝเบ‡เบ—เบณเบญเบดเบ”เบ‚เบญเบ‡เบกเบฑเบ™:

เบ„เบงเบฒเบก เปเบฒเบ เบชเบฑเบ™เบเบฒเบฅเบฑเบ
IS_ALL เป„เบ”เป‰เบฎเบฑเบšเบฅเบฒเบเบเบฒเบ™เป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ—เบฑเบ‡เปเบปเบ”
IS_DIR เบฎเบฑเบšเป€เบญเบปเบฒเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ—เบฑเบ‡เปเบปเบ”, เบฅเบงเบกเบ—เบฑเบ‡ . เปเบฅเบฐ..
IS_FILE เป„เบ”เป‰เบฎเบฑเบšเบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒ
IS_SUBDIR เบฎเบฑเบšเป€เบญเบปเบฒเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบเปˆเบญเบเบ—เบฑเบ‡เปเบปเบ”

เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเบฎเบนเบšเปเบšเบš * เบˆเบฐเบšเปเปˆเบเบปเบ‡เบเบฑเบšเบฅเบฒเบเบเบฒเบ™เบ—เบตเปˆเป€เบŠเบทเปˆเบญเบ‡เป„เบงเป‰เบžเบฒเบเปƒเบ•เป‰เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ›เบฐเป€เบžเบ” Unix
เบฅเบฐเบšเบปเบš. เปƒเบŠเป‰ .* เบชเปเบฒเบฅเบฑเบšเบงเปˆเบฒ.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ makelist(string เบซเบ™เป‰เบฒโ€‹เบเบฒเบ, เปƒเปเปˆเบเบงเปˆเบฒ, string เป„เบŸเบฅเปŒเบ›เบฝเบšเบ—เบฝเบš)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ—เบฑเบ‡เปเบปเบ”เบ—เบตเปˆเบเบปเบ‡เบเบฑเบšเปœเป‰เบฒเบเบฒเบเบ—เบตเปˆเปƒเปเปˆเบเบงเปˆเบฒเบ—เบตเปˆเบชเบฐเปœเบญเบ‡เปƒเบซเป‰
เบ›เบฝเบšเบ—เบฝเบšเป„เบŸเบฅเปŒ. เบœเบนเป‰เบ›เบฐเบเบญเบšเบเบฒเบ™ younger เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปเบ—เบ™ เปƒเบซเบกเปˆเบเบงเปˆเบฒ. เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒ เปƒเบซเบกเปˆเบเบงเปˆเบฒ เปเบฅเบฐ
younger เปเบกเปˆเบ™เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™, เบšเปเปˆเปเบกเปˆเบ™เบชเบฒเบ.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ makelist([int = IS_FILE,] string เบซเบ™เป‰เบฒโ€‹เบเบฒเบ, เปƒเปเปˆเบเบงเปˆเบฒ, string เป„เบŸเบฅเปŒเบ›เบฝเบšเบ—เบฝเบš)
เบ„เบทเบเบฑเบ™เบเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบ•เปˆ เบ›เบฐเป€เบžเบ” เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ makelist(เบ›เบฐโ€‹เป€เบžเบ”โ€‹,
string เบซเบ™เป‰เบฒโ€‹เบเบฒเบ).

o makelist(string เบซเบ™เป‰เบฒโ€‹เบเบฒเบ, เปเบเปˆ, string เป„เบŸเบฅเปŒเบ›เบฝเบšเบ—เบฝเบš)
เป€เบšเบดเปˆเบ‡โ€‹เบขเบนเปˆโ€‹เบ‚เป‰เบฒเบ‡โ€‹เป€เบ—เบดเบ‡; เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เป„เบŸเบฅเปŒเบ—เบตเปˆเป€เบเบปเปˆเบฒเบเบงเปˆเบฒเบ—เบตเปˆเบ›เบฝเบšเบ—เบฝเบšเป„เบŸเบฅเปŒ.

o makelist(เบ›เบฐโ€‹เป€เบžเบ”โ€‹, string เบซเบ™เป‰เบฒโ€‹เบเบฒเบ, เปเบเปˆ, string เป„เบŸเบฅเปŒเบ›เบฝเบšเบ—เบฝเบš)
เบ„เบทเบเบฑเบ™เบเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบ•เปˆ เบ›เบฐเป€เบžเบ” เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบฅเบฐเบšเบธเป„เบงเป‰เปƒเบ™ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ makelist(เบ›เบฐโ€‹เป€เบžเบ”โ€‹,
string เบซเบ™เป‰เบฒโ€‹เบเบฒเบ).

o int printf(... )
เบชเบฐเปเบ”เบ‡เบญเบฒเบเบดเบงเป€เบกเบฑเบ™เบ—เบฑเบ‡เปเบปเบ” (เปเบฒเบเบˆเบธเบ”เบ—เบตเปˆเปเบเบเบญเบญเบ) เปƒเบชเปˆเปœเป‰เบฒเบˆเป (เป€เบŠเบฑเปˆเบ™: เบชเบฐเบ•เบฃเบตเบกเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™).
เบ•เบญเบšเบˆเปเบฒเบ™เบงเบ™เบญเบฒเบเบดเบงเป€เบกเบฑเบ™เบ—เบตเปˆเบžเบดเบกเบญเบญเบ.

o int printf(string เบฎเบนเบšเปเบšเบš, ... )
เบชเบฐเปเบ”เบ‡เบญเบฒเบเบดเบงเป€เบกเบฑเบ™เบ—เบฑเบ‡เปเบปเบ” (เปเบฒเบเบˆเบธเบ”เบ—เบตเปˆเปเบเบเบญเบญเบ) เปƒเบชเปˆเปœเป‰เบฒเบˆเป (เป€เบŠเบฑเปˆเบ™: เบชเบฐเบ•เบฃเบตเบกเบœเบปเบ™เบœเบฐเบฅเบดเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™).
เบ•เบญเบšเบˆเบณเบ™เบงเบ™เบ‚เบญเบ‡เบญเบฒเบเบดเบงเป€เบกเบฑเบ™เบ—เบตเปˆเบžเบดเบกเบญเบญเบ (the เบฎเบนเบšเปเบšเบš string เบ™เบฑเบšเป€เบ›เบฑเบ™เบซเบ™เบถเปˆเบ‡ argument).

If เบฎเบนเบšเปเบšเบš เบ›เบฐเบเบญเบšเบกเบตเบ•เบปเบงเบเบถเบ” %1 .. %n เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบ–เบทเบเบˆเบฑเบ”เบฎเบนเบšเปเบšเบš (เป€เบšเบดเปˆเบ‡
เบฎเบนเบšเปเบšเบš).

o int putenv(string envvar)
Adds envvar เบเบฑเบšโ€‹เบ›เบฐโ€‹เบˆเบธโ€‹เบšเบฑเบ™ (icmake) เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเปƒเบŠเป‰เบฎเบนเบšเปเบšเบš: "VAR=value".
เบเบฑเบšเบ„เบทเบ™ 0.

o string เบ›เบฑเบšเบ‚เบฐเปœเบฒเบ”(string str, int เบ„เบงเบฒเบกเบเบฒเบงเปƒเบซเบกเปˆ) เบชเบปเปˆเบ‡เบ„เบทเบ™เบชเบณเป€เบ™เบปเบฒเบ‚เบญเบ‡เบชเบฐเบ•เบฃเบดเบ‡ str, เบ›เบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เป€เบ›เบฑเบ™
เบ„เบงเบฒเบกเบเบฒเบงเปƒเบซเบกเปˆ เบ•เบปเบงเบฅเบฐเบ„เบญเบ™. เบ–เป‰เบฒ เบ„เบงเบฒเบกเบเบฒเบงเปƒเบซเบกเปˆ เป€เบ›เบฑเบ™เบ„เปˆเบฒเบฅเบปเบš เบˆเบฒเบเบ™เบฑเป‰เบ™เบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒเบˆเบฐเบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™,
if เบ„เบงเบฒเบกเบเบฒเบงเปƒเบซเบกเปˆ เป€เบเบตเบ™เป„เบ› str's เบ„เบงเบฒเบกเบเบฒเบงเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เบ—เบตเปˆเป€เบžเบตเปˆเบกเปƒเบซเบกเปˆเบˆเบฐเบ–เบทเบเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™
เบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡.

o int เบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡ (เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ l)
เบ„เบฑเบ”เบ„เป‰เบฒเบ™: เปƒเบŠเป‰ เบŸเบฑเบ‡.

o int sizeoflist(เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ l)
เบ„เบฑเบ”เบ„เป‰เบฒเบ™: เปƒเบŠเป‰ เบŸเบฑเบ‡.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ stat(string เป€เบ‚เบปเป‰เบฒ)
เบœเบปเบ™เบ•เบญเบšเปเบ—เบ™ เบฅเบฑเบ”(2โ€‹) เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เป€เบ‚เบปเป‰เบฒโ€‹เบฅเบฐโ€‹เบšเบปเบšโ€‹ entry เป€เบ›เบฑเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ. เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบเบฑเบšเบ„เบทเบ™
เบกเบตเบชเบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบš: เบญเบปเบ‡เบ›เบฐเบเบญเบš 0 เปเบกเปˆเบ™ เบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐ เบกเบนเบ™เบ„เปˆเบฒ, เบญเบปเบ‡เบ›เบฐเบเบญเบš 1 เบกเบตเบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡
เป„เบŸเบฅเปŒ.

เบ„เบธเบ™โ€‹เบฅเบฑเบโ€‹เบชเบฐโ€‹เบ™เบฐโ€‹เปเบกเปˆเบ™โ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹เบเบฒเบ™โ€‹เบชเบปเปˆเบ‡โ€‹เบ„เบทเบ™โ€‹เป€เบ›เบฑเบ™ bit-flagsโ€‹, เบ›เบฐโ€‹เบเบญเบšโ€‹เบˆเบฒเบโ€‹เบ”เบฑเปˆเบ‡โ€‹เบ•เปเปˆโ€‹เป„เบ›โ€‹เบ™เบตเป‰โ€‹เบเปเบฒโ€‹เบ™เบปเบ”โ€‹เป„เบงเป‰โ€‹เบฅเปˆเบงเบ‡โ€‹เบซเบ™เป‰เบฒโ€‹
เบ„เบปเบ‡เบ—เบตเปˆ:

S_IFCHR S_IFDIR S_IFREG
S_IREAD S_IWRITE S_IEXEC

เป€เบšเบดเปˆเบ‡ เบฅเบฑเบ”(2) เบซเบ™เป‰เบฒเบ„เบนเปˆเบกเบทเบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเบซเบกเบฒเบเบ‚เบญเบ‡เบ„เปˆเบฒเบ„เบปเบ‡เบ—เบตเปˆเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เบชเบฐโ€‹เบ–เบดโ€‹เบ•เบด (เบเบงเบ”โ€‹เบชเบญเบšโ€‹, string เป€เบ‚เบปเป‰เบฒ)
เบ„เบทเบเบฑเบ™เบเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบ•เปˆเป‚เบ”เบเบเบฒเบ™เบฅเบฐเบšเบธ เบเบฒเบ™เบเบงเบ”เบชเบญเบš as P_NOCHEC เปœเป‰เบฒ เบ—เบตเปˆ
เบˆเบฐเบšเปเปˆเบขเบธเบ”เบชเบฐเบ„เบฃเบดเบš. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ, เบกเบฑเบ™เบเบฑเบšเบ„เบทเบ™เบกเบฒ เบฅเบฑเบ”(2) เบ„เปˆเบฒเบเบฑเบšเบ„เบทเบ™เบ‚เบญเบ‡.

o int strhr(string str, string เบ•เบปเบงเบญเบฑเบเบชเบญเบ™)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบ”เบฑเบ”เบŠเบฐเบ™เบตเบ—เบณเบญเบดเบ”เปƒเบ™ str เบšเปˆเบญเบ™เบ—เบตเปˆเบ•เบปเบงเบฅเบฐเบ„เบญเบ™เปƒเบ”เบขเบนเปˆเปƒเบ™ เบ–เบฑเบ‡ เบžเบปเบšเป€เบซเบฑเบ™, เบซเบผเบท -1
if str เบšเปเปˆเบกเบตเบ•เบปเบงเบญเบฑเบเบชเบญเบ™เปƒเบ”เป†เปƒเบ™ เบ–เบฑเบ‡.

o int strlen(string str)
เบ•เบญเบšเบˆเปเบฒเบ™เบงเบ™เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เปƒเบ™ str (เบšเปเปˆเบ™เบฑเบš 0 เบชเบธเบ”เบ—เป‰เบฒเบ).

o int strfind(string เป€เบŸเบทเบญเบ‡, string เป€เบ‚เบฑเบก)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบ”เบฑเบ”เบŠเบฐเบ™เบตเปƒเบ™ เบซเบดเบกเบฐ เบšเปˆเบญเบ™เบ—เบตเปˆ เป€เบ‚เบฑเบก เบ–เบทเบเบžเบปเบšเป€เบซเบฑเบ™, เบซเบผเบท -1 เบ–เป‰เบฒ เป€เบ‚เบฑเบก เบšเปเปˆเป„เบ”เป‰เบšเบฑเบ™เบˆเบธ
in เบซเบดเบกเบฐ.
เบ™เบตเป‰ เบซเบ™เป‰เบฒเบ—เบตเปˆ เปเบกเปˆเบ™ เป€เบญเบตเป‰เบ™เบงเปˆเบฒ strstr() in เบชเบฐเบšเบฑเบš เบเปˆเบญเบ™เบ—เบตเปˆเบˆเบฐ 7.00.

o int เบฎเบนเบšเปเบšเบšเบชเบฐเบ•เบฃเบดเบ‡(string เบฎเบนเบšโ€‹เปเบšเบšโ€‹, ... )
เบ•เบญเบšเบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบกเบตเบฎเบนเบšเปเบšเบšเป‚เบ”เบเปƒเบŠเป‰เบ•เบปเบงเบเบถเบ” %1 .. %2 เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบญเบฒเบเบดเบงเป€เบกเบฑเบ™
เบฎเบนเบšโ€‹เปเบšเบšโ€‹เบ”เบฑเปˆเบ‡โ€‹เบ•เปเปˆโ€‹เป„เบ›โ€‹เบ™เบตเป‰โ€‹.
เบ•เบปเบงเบขเปˆเบฒเบ‡:

void เบซเบฅเบฑเบ ()
{
int i = 10;
int j = 20;
string s1;
string s2;
// เบงเบดเบ—เบตเบเบฒเบ™เปเบšเบšเบ”เบฑเป‰เบ‡เป€เบ”เบตเบก:
s1 = (string)i + "" + (string)j + "" + (string)i;
// เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰ strformatโ€‹:
s2 = strformat("%1 %2 %1",i,j);
printf("s1 = %1, s2 = %2\n", s1, s2);
}

o string strlwr(เบชเบฐเบ•เบฃเบดเบ‡ s)
เปƒเบซเป‰เบœเบปเบ™เป€เบ›เบฑเบ™เบ•เบปเบงเบžเบดเบกเบ™เป‰เบญเบเบŠเปเป‰เบฒเบเบฑเบ™เบ‚เบญเบ‡ s.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ strtok(เบชเบฐเบ•เบฃเบดเบ‡ str, string เบ•เบปเบงเปเบเบ)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบ—เบตเปˆเบกเบตเบชเบฒเบเบเปˆเบญเบเบ—เบฑเบ‡เปเบปเบ”เบ‚เบญเบ‡ str เปเบเบเป‚เบ”เบเบซเบ™เบถเปˆเบ‡เบซเบผเบทเบซเบผเบฒเบเบเบงเปˆเบฒเบ™เบฑเป‰เบ™
(เบ•เบดเบ”เบ•เปเปˆเบเบฑเบ™) เบ•เบปเบงเบญเบฑเบเบชเบญเบ™เปƒเบ™ เบ•เบปเบงเบ‚เบฑเป‰เบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡: strtok("เบชเบฐเบšเบฒเบเบ”เบต icmake's + เป‚เบฅเบ", " +")
เบชเบปเปˆเบ‡เบ„เบทเบ™เบฅเบฒเบเบŠเบทเปˆเบ—เบตเปˆเบกเบตเบชเบฒเบกเบชเบฐเบ•เบฃเบดเบ‡ "เบชเบฐเบšเบฒเบเบ”เบต", "icmake เบ‚เบญเบ‡", เปเบฅเบฐ "เป‚เบฅเบ".

o string strupr(string s)
เบ•เบญเบšเบ•เบปเบงเบžเบดเบกเปƒเบซเบเปˆเบŠเปเป‰เบฒเบเบฑเบ™เบ‚เบญเบ‡ s.

o string substr(string เบ‚เปเป‰โ€‹เบ„เบงเบฒเบก, int เบŠเบปเบ”เป€เบŠเบตเบ, int เบ™เบฑเบš)
เบ•เบญเบšเบชเบฐเบ•เบฃเบดเบ‡เบเปˆเบญเบเบ‚เบญเบ‡ เบ‚เปเป‰เบ„เบงเบฒเบก, เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบขเบนเปˆ เบŠเบปเบ”เป€เบŠเบตเบ, เบ›เบฐเบเบญเบšเบ”เป‰เบงเบ เบ™เบฑเบš เบ•เบปเบงเบฅเบฐเบ„เบญเบ™. เบ–เป‰เบฒ
เบŠเบปเบ”เป€เบŠเบตเบ เป€เบเบตเบ™ (เบซเบผเบทเป€เบ—เบปเปˆเบฒเบเบฑเบš) เบ‚เบฐเปœเบฒเบ”เบ‚เบญเบ‡เบชเบฐเบ•เบฃเบดเบ‡ เบซเบผเบทเบ–เป‰เบฒ เบ™เบฑเบš <= 0, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป€เบ›เบฑเบ™ string เป€เบ›เบปเปˆเบฒ
เบ–เบทเบเบชเบปเปˆเบ‡เบ„เบทเบ™. เบ–เป‰เบฒ เบŠเบปเบ”เป€เบŠเบตเบ เปเบกเปˆเบ™เบซเบ™เป‰เบญเบเบเบงเปˆเบฒ 0 เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™ 0 เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰.

o int เบฅเบฐเบšเบปเบš(string เบ„เปเบฒเบชเบฑเปˆเบ‡)
เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” เบ„เปเบฒเบชเบฑเปˆเบ‡. เบ„เปˆเบฒเบเบฑเบšเบ„เบทเบ™เบชเบฐเปเบ”เบ‡เป€เบ–เบดเบ‡เบ„เปˆเบฒเบญเบญเบเบ‚เบญเบ‡เบ„เปเบฒเบชเบฑเปˆเบ‡เบ—เบตเปˆเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”. เป„เบ”เป‰
string เบ„เปเบฒเบชเบฑเปˆเบ‡ เบญเบฒเบ”เบˆเบฐเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เป€เบชเบฑเป‰เบ™เบ—เบฒเบ‡ เปเบฅเบฐ/เบซเบผเบท เบฅเบฑเบเบชเบฐเบ™เบฐเบ—เปเปˆ.

o int เบฅเบฐเบšเบปเบš(int เบเบฒเบ™โ€‹เบเบงเบ”โ€‹เบชเบญเบšโ€‹, string เบ„เปเบฒเบชเบฑเปˆเบ‡)
เบซเบ™เป‰เบฒเบ—เบตเปˆเบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ, เปเบ•เปˆเป‚เบ”เบเบเบฒเบ™เบฅเบฐเบšเบธ เบเบฒเบ™เบเบงเบ”เบชเบญเบš as
เบšเปเปˆเป„เบ”เป‰เบเบงเบ”เป€เบšเบดเปˆเบ‡ เบŸเบฑเบ‡เบŠเบฑเบ™เบˆเบฐเบšเปเปˆเบขเบธเบ”เบชเบฐเบ„เบฃเบดเบš. เปเบ—เบ™เบ—เบตเปˆเบˆเบฐ, เบกเบฑเบ™เบˆเบฐเบเบฑเบšเบ„เบทเบ™เบกเบฒ
เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบญเบญเบเบ„เปเบฒเบชเบฑเปˆเบ‡, เบซเบผเบท 0x7f00 เบ–เป‰เบฒเบšเปเปˆเบžเบปเบšเบ„เปเบฒเบชเบฑเปˆเบ‡.

o string trim(string s)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบชเบณเป€เบ™เบปเบฒเบ‚เบญเบ‡ s เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ™เปเบฒเบžเบฒเปเบฅเบฐเบ•เบดเบ”เบ•เบฒเบกเบชเบฐเบ–เบฒเบ™เบ—เบตเปˆเบชเบตเบ‚เบฒเบง.

o string trimleft(string str)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบชเบณเป€เบ™เบปเบฒเบ‚เบญเบ‡ s เป‚เบ”เบเบšเปเปˆเบกเบตเบžเบทเป‰เบ™เบ—เบตเปˆเบชเบตเบ‚เบฒเบงเบ™เปเบฒ.

o string trim(string s)
เบชเบปเปˆเบ‡เบ„เบทเบ™เบชเบณเป€เบ™เบปเบฒเบ‚เบญเบ‡ s เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เบ•เบดเบ”เบ•เบฒเบกเบŠเปˆเบญเบ‡เบซเบงเปˆเบฒเบ‡เบชเบตเบ‚เบฒเบง.

เบœเบนเป‰เปƒเบŠเป‰ เบเปเบฒเบ™เบปเบ” FUNCTIONS


void เบ•เบปเป‰เบ™เบ•เป

Icmake scripts เบ•เป‰เบญเบ‡เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบญเบ‡เบ”เป‰เบงเบเบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰เบเปเบฒเบ™เบปเบ” เบ•เบปเป‰เบ™เบ•เป. เปœเป‰เบฒ เบ—เบตเปˆ เบ•เบปเป‰เบ™เบ•เป เบกเบต
เบชเบฒเบกเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบ—เบฒเบ‡เป€เบฅเบทเบญเบ, เป€เบŠเบดเปˆเบ‡เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบเบปเบเป€เบงเบฑเป‰เบ™เบˆเบฒเบเบญเบฑเบ™เบชเบธเบ”เบ—เป‰เบฒเบ (envp) เบเบฑเบšโ€‹เบ„เบฑเป‰เบ‡โ€‹เบ—เปเบฒโ€‹เบญเบดเบ”โ€‹
(เป‚เบ•เป‰เบ–เบฝเบ‡), เป€เบŠเบฑเปˆเบ™โ€‹เบ”เบฝเบงโ€‹เบเบฑเบ™โ€‹เบเบฑเบšโ€‹ C. เบ•เบปเป‰เบ™เปเบšเบšเป€เบ•เบฑเบกเบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡เบกเบฑเบ™เปเบกเปˆเบ™ (เปเบฒเบเป€เบซเบ”: void เบ›เบฐเป€เบžเบ”เบเบฑเบšเบ„เบทเบ™):

void main(int argc, list argv, list envp)

In เบ•เบปเป‰เบ™เบ•เป (),

o เป‚เบ•เป‰เบ–เบฝเบ‡ เป€เบ›เบฑเบ™เบ•เบปเบงเปเบ—เบ™เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™ argv;

o argv เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบญเบฒเบเบดเบงเป€เบกเบฑเบ™, เบ”เป‰เบงเบเบญเบปเบ‡เบ›เบฐเบเบญเบš 0 เป€เบ—เบปเปˆเบฒเบเบฑเบšเบŠเบทเปˆเบ‚เบญเบ‡ .bim
เปเบŸเป‰เบก;

o envp เบกเบตเบ•เบปเบงเปเบ› 'เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก'. เบซเบ™เป‰เบฒเบ—เบตเปˆ เบŸเบฑเบ‡ เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญ
เบเปเบฒเบ™เบปเบ”เบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบ‚เบญเบ‡เบกเบฑเบ™. เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™ envp เบกเบตเปเบšเบšเบŸเบญเบก
variable=เบ„เปˆเบฒ. เบญเบตเบเบ—เบฒเบ‡เป€เบฅเบทเบญเบ, เบซเบ™เป‰เบฒเบ—เบตเปˆ getenv เบชเบฒเบกเบฒเบ”เปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ”เบถเบ‡เบ‚เปเป‰เบกเบนเบ™ a
เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบชเบฐเป€เบžเบฒเบฐเบ•เบปเบงเบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบฑเบ™เบ—เบต. เบ•เบปเบงเบขเปˆเบฒเบ‡:

void main(int argc, list argv)
{
เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ—เบตเปˆเบˆเบฐเบฅเบงเบšเบฅเบงเบก;
int idx;

เบ–เป‰เบฒ (argc == 1)
เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰(เบญเบปเบ‡เบ›เบฐเบเบญเบš(0, argv));

เบ–เป‰เบฒ (toCompile = เบ›เปˆเบฝเบ™เปเบ›เบ‡("*.cc"))
{
เบชเปเบฒเบฅเบฑเบš (idx = length(toCompile); idx--; )
compile(เบญเบปเบ‡เบ›เบฐเบเบญเบš(idx, toCompile));

เบ–เป‰เบฒ (getenv("dryrun")[0] == "0")
linking(เบญเบปเบ‡เบ›เบฐเบเบญเบš(2, argv));
}
}

เบกเบตเบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ•เบปเบงเปเบ›เบ—เบปเปˆเบงเป‚เบฅเบเบ—เบฑเบ‡เปเบปเบ”เบ•เบฒเบกเบฅเปเบฒเบ”เบฑเบšเบ‚เบญเบ‡เบ„เปเบฒเบ™เบดเบเบฒเบกเบ‚เบญเบ‡เบกเบฑเบ™ เบ•เบปเป‰เบ™เบ•เป เบ–เบทเบเป€เบญเบตเป‰เบ™เป‚เบ”เบ
icmakeเบฅเบฐเบšเบปเบšเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เป€เบงเบฅเบฒเปเบฅเปˆเบ™เบ‚เบญเบ‡เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบงเบฝเบเบ‡เบฒเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบก.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบเปเบฒเบ™เบปเบ”เป„เบงเป‰ เบœเบนเป‰เปƒเบŠเป‰ เบซเบ™เป‰เบฒเบ—เบตเปˆ

เบŸเบฑเบ‡เบŠเบฑเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบญเบฒเบ”เบˆเบฐเบ–เบทเบเบเปเบฒเบ™เบปเบ”. เป€เบกเบทเปˆเบญเบเปเบฒเบ™เบปเบ”, เบซเบ™เป‰เบฒเบ—เบตเปˆเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบ–เบทเบเป€เบญเบตเป‰เบ™เบงเปˆเบฒ. เบชเบปเปˆเบ‡เบ•เปเปˆ
เบšเปเปˆเบฎเบญเบ‡เบฎเบฑเบšเบเบฒเบ™เบญเป‰เบฒเบ‡เบญเบตเบ‡เบ•เบปเบงเปเบ› เบซเบผเบทเบŸเบฑเบ‡เบŠเบฑเบ™เบ•เปˆเบฒเบ‡เป†, เปเบ•เปˆเบเบฒเบ™เป‚เบ—เบŠเป‰เบณเป†
เบซเบ™เป‰เบฒโ€‹เบ—เบตเปˆโ€‹เปเบกเปˆเบ™โ€‹. เปƒเบ™เบ–เบฒเบ™เบฐเป€เบ›เบฑเบ™เบเบฒเบ™เบ›เบฐเบเบฒเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ recursion เบ—เบฒเบ‡เบญเป‰เบญเบกเปเบกเปˆเบ™เบšเปเปˆ
เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™โ€‹เบ—เบฑเบ‡โ€‹เบซเบกเบปเบ”โ€‹.

เบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบตเปˆเบœเบนเป‰เปƒเบŠเป‰เบเปเบฒเบ™เบปเบ”เบ•เป‰เบญเบ‡เบกเบตเบญเบปเบ‡เบ›เบฐเบเบญเบšเบ”เบฑเปˆเบ‡เบ•เปเปˆเป„เบ›เบ™เบตเป‰:

o เบ›เบฐเป€เบžเบ”เบœเบปเบ™เบ•เบญเบšเปเบ—เบ™เบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบ•เป‰เบญเบ‡เป€เบ›เบฑเบ™เบซเบ™เบถเปˆเบ‡เปƒเบ™ เบซเบงเปˆเบฒเบ‡โ€‹เป€เบ›เบปเปˆเบฒโ€‹, int, string or เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ—เบตเปˆเบขเบนเปˆ เบกเบต
เบšเปเปˆเปเบกเปˆเบ™เบ›เบฐเป€เบžเบ”เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™.

o เบŠเบทเปˆเบ‚เบญเบ‡เบŸเบฑเบ‡เบŠเบฑเบ™, เบ•เบปเบงเบขเปˆเบฒเบ‡, เบฅเบงเบšเบฅเบงเบก.

o เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบžเบฒเบฅเบฒเบกเบดเป€เบ•เบต, เบเปเบฒเบ™เบปเบ”เบชเบนเบ™ เบซเบผเบทเบซเบผเบฒเบเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบตเปˆเบ‚เบฑเป‰เบ™เบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เปเบฒเบเบˆเบธเบ”. เบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™
เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบŠเบทเปˆเบ›เบฐเป€เบžเบ” (int, string, เบซเบผเบท เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ) เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เบ•เบฒเบกโ€‹เป‚เบ”เบโ€‹
เบ•เบปเบงเบฅเบฐเบšเบธเบ•เบปเบงเบเปเบฒเบ™เบปเบ”เบเบฒเบ™. เบ•เบปเบงเบขเปˆเบฒเบ‡: (เบชเบฒเบ outfile, string เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™).

o A เบฎเปˆเบฒเบ‡เบเบฒเบ เบญเป‰เบญเบกเบฎเบญเบšเบ”เป‰เบงเบเบงเบปเบ‡เป€เบฅเบฑเบš curly เบ„เบนเปˆ ({ เปเบฅเบฐ }).

เบญเบปเบ‡เบเบฒเบ™เบŸเบฑเบ‡เบŠเบฑเบ™เบญเบฒเบ”เบกเบตเบ„เปเบฒเบ™เบดเบเบฒเบกเบ•เบปเบงเปเบ› (เบ—เบฒเบ‡เป€เบฅเบทเบญเบเป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™). เบ•เบปเบงเปเบ›
เบ„เปเบฒเบ™เบดเบเบฒเบกเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบŠเบทเปˆเบ›เบฐเป€เบžเบ”, เบ•เบฒเบกเบ”เป‰เบงเบเป€เบ„เบทเปˆเบญเบ‡เปเบฒเบเบˆเบธเบ”เปœเบถเปˆเบ‡ เบซเบผเบทเบซเบผเบฒเบเบญเบฑเบ™เบ—เบตเปˆเปเบเบเบเบฑเบ™ (เป€เบฅเบทเบญเบเป„เบ”เป‰
initialized) เบ•เบปเบงเบฅเบฐเบšเบธเบ•เบปเบงเปเบ›. เบ–เป‰เบฒเบ•เบปเบงเปเบ›เบšเปเปˆเป„เบ”เป‰เบ–เบทเบเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบขเปˆเบฒเบ‡เบŠเบฑเบ”เป€เบˆเบ™, เบกเบฑเบ™เปเบกเปˆเบ™
เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™. เป‚เบ”เบเบ„เปˆเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™ int เบ•เบปเบงเปเบ›เปเบกเปˆเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™ 0, a string is
เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ›เบฑเบ™เบชเบฐเบ•เบฃเบดเบ‡เบซเบงเปˆเบฒเบ‡เป€เบ›เบปเปˆเบฒ ("") เปเบฅเบฐเบ เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆ เป„เบ”เป‰เบ–เบทเบเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป€เบ‚เบปเป‰เบฒเปƒเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเบชเบนเบ™.

เบ™เบญเบเป€เปœเบทเบญเป„เบ›เบˆเบฒเบเบ„เบณเบ™เบดเบเบฒเบกเบ—เบตเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰, เบญเบปเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบญเบฒเบ”เบกเบตเบ„เบณเบŠเบตเป‰เปเบˆเบ‡เบชเบนเบ™ เบซเบผเบท เบซเบผเบฒเบเบเบงเปˆเบฒเบ™เบฑเป‰เบ™ (cf.
เบชเปˆเบงเบ™ เบญเบฑเบ”เบ•เบฒเบเบฒเบ™เป„เบซเบฅ เบเบฒเบ™เบ„เบงเบšเบ„เบธเบก). เปƒเบซเป‰เบชเบฑเบ‡เป€เบเบ”เบงเปˆเบฒเบ•เบปเบงเปเบ›เบญเบฒเบ”เบˆเบฐเบ–เบทเบเบเปเบฒเบ™เบปเบ” (เปเบฅเบฐเบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™)
เบ—เบธเบเบšเปˆเบญเบ™เบžเบฒเบเปƒเบ™เบŸเบฑเบ‡เบŠเบฑเบ™, เปเบฅเบฐเบเบฑเบ‡เบขเบนเปˆเปƒเบ™ เบ–เป‰เบฒ, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ เปเบฅเบฐ เปƒเบ™เบ‚เบฐเบ™เบฐเบ—เบตเปˆ เบ–เบฐเปเบซเบผเบ‡เบเบฒเบ™.

เบžเบถเบ”เบ•เบด เบเบณ เบ‚เบญเบ‡ icmake-scripts เปƒเบŠเป‰เบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™ void เบ—เบตเปˆเบšเปเปˆเบชเบปเปˆเบ‡เบ„เบทเบ™เบ„เปˆเบฒเบšเปเปˆเปเบกเปˆเบ™
เบเปเบฒเบ™เบปเบ”.

เปƒเบŠเป‰ icmun เบญเบญเบ™เป„เบฅเบ™เปŒเป‚เบ”เบเปƒเบŠเป‰เบšเปเบฅเบดเบเบฒเบ™ onworks.net


เป€เบŠเบตเบšเป€เบงเบต เปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบตเป€เบฎเบฑเบ”เบงเบฝเบเบŸเบฃเบต

เบ”เบฒเบงเป‚เบซเบผเบ”เปเบญเบฑเบš Windows เปเบฅเบฐ Linux

  • 1
    เบงเบปเบ‡เป€เบฅเบฑเบš
    เบงเบปเบ‡เป€เบฅเบฑเบš
    เบงเบปเบ‡เป€เบฅเบฑเบšเป€เบ›เบฑเบ™เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เป เปเบฅเบฐเบšเปเปˆเป€เบชเบเบ„เปˆเบฒ
    เบ•เบปเบงเปเบเป‰เป„เบ‚เบ‚เปเป‰เบ„เบงเบฒเบกเบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐเบชเปเบฒเบฅเบฑเบšเป€เบงเบฑเบš
    เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ. เบ‚เบฝเบ™เปƒเบ™ HTML, CSS, เปเบฅเบฐ
    JavaScript เบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบชเบฒเบเบ•เบฒเบ—เบตเปˆเบชเบธเบกเปƒเบชเปˆเปเบฅเบฐ
    เบเบฝเบก...
    เบ”เบฒเบงเป‚เบซเบฅเบ”เบงเบปเบ‡เป€เบฅเบฑเบš
  • 2
    Pascal Compiler เบŸเบฃเบต
    Pascal Compiler เบŸเบฃเบต
    A 32/64/16-bit Pascal compiler เบชเปเบฒเบฅเบฑเบš
    Win32/64/CE, Linux, Mac OS X/iOS,
    Android, FreeBSD, OS/2, Game Boy
    Advance, Nintendo NDS เปเบฅเบฐ DOS;
    เป€เบ‚เบปเป‰เบฒเบเบฑเบ™เป„เบ”เป‰ wi...
    เบ”เบฒเบงเป‚เบซเบฅเบ” Pascal Compiler เบŸเบฃเบต
  • 3
    เบ‚เปเป‰เบกเบนเบ™เบ”เบดเบˆเบดเบ•เบญเบ™ Canon EOS
    เบ‚เปเป‰เบกเบนเบ™เบ”เบดเบˆเบดเบ•เบญเบ™ Canon EOS
    Canon เบšเปเปˆเบกเบตเบเบฒเบ™เบ™เบฑเบš shutter
    เบฅเบงเบกเบขเบนเปˆเปƒเบ™เบ‚เปเป‰เบกเบนเบ™ EXIF โ€‹โ€‹เบ‚เบญเบ‡ an
    เป„เบŸเบฅเปŒเบฎเบนเบšเบžเบฒเบš, เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบกเบเบฑเบš Nikon เปเบฅเบฐ
    Pentax. เบšเปเปˆเบกเบต Canon เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เบ—เบฒเบ‡เบเบฒเบ™
    เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ ...
    เบ”เบฒเบงเป‚เบซเบฅเบ”เบ‚เปเป‰เบกเบนเบ™ Canon EOS DIGITAL
  • 4
    rEFInd
    rEFInd
    rEFInd เปเบกเปˆเบ™เบ—เบฒเบ‡เปเบเบเบ‚เบญเบ‡ rEFIt boot
    เบœเบนเป‰โ€‹เบˆเบฑเบ”โ€‹เบเบฒเบ™. เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบš rEFIt, rEFInd เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰
    เบเบงเบ”โ€‹เบซเบฒโ€‹เบญเบฑเบ”โ€‹เบ•เบฐโ€‹เป‚เบ™โ€‹เบกเบฑเบ” boot EFI เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹เบ•เบดเบ”โ€‹เบ•เบฑเป‰เบ‡โ€‹
    loaders เปเบฅเบฐเบกเบฑเบ™เบ™เปเบฒเบชเบฐเป€เบซเบ™เบต GUI เบ‡เบฒเบก
    เป€เบกเบ™เบนเบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบฒเบ™เบšเบนเบ”...
    เบ”เบฒเบงเป‚เบซเบฅเบ” rEFInd
  • 5
    ExpressLuke GSI
    ExpressLuke GSI
    เบซเบ™เป‰เบฒเบ”เบฒเบงเป‚เบซเบฅเบ” SourceForge เบ™เบตเป‰เปเบกเปˆเบ™เป€เบžเบทเปˆเบญ
    เปƒเบซเป‰เบœเบนเป‰เปƒเบŠเป‰เบ”เบฒเบงเป‚เบซเบฅเบ”เปเบซเบผเปˆเบ‡เบ‚เบญเบ‡เบ‚เป‰เบญเบเบ—เบตเปˆเบชเป‰เบฒเบ‡เบ‚เบถเป‰เบ™
    GSIs, เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™เบ—เบตเปˆเบเบดเปˆเบ‡เปƒเบซเบเปˆเบ‚เบญเบ‡ phhusson
    เป€เบฎเบฑเบ”เบงเบฝเบ. เบ‚เป‰เบญเบเบชเป‰เบฒเบ‡เบ—เบฑเบ‡ Android Pie เปเบฅเบฐ
    Android 1...
    เบ”เบฒเบงเป‚เบซเบฅเบ” ExpressLuke GSI
  • 6
    เบ™เบฑเบเบชเบฐเปเบ”เบ‡เบ”เบปเบ™เบ•เบต
    เบ™เบฑเบเบชเบฐเปเบ”เบ‡เบ”เบปเบ™เบ•เบต
    Music Caster เป€เบ›เบฑเบ™เป€เบ„เบทเปˆเบญเบ‡เบซเบผเบดเป‰เบ™เบ”เบปเบ™เบ•เบตเบ–เบฒเบ”
    เบ—เบตเปˆโ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบ—เปˆเบฒเบ™โ€‹เบ‚เบฑเบšโ€‹เบฎเป‰เบญเบ‡โ€‹เป€เบžเบ‡โ€‹เปƒเบ™โ€‹เบ—เป‰เบญเบ‡โ€‹เบ–เบดเปˆเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹เป€เบ›เบฑเบ™โ€‹
    เบญเบธเบ›เบฐเบเบญเบ™ Google Cast. เปƒเบ™โ€‹เบเบฒเบ™โ€‹เปเบฅเปˆเบ™โ€‹เบ„เบฑเป‰เบ‡โ€‹เบ—เปเบฒโ€‹เบญเบดเบ”โ€‹,
    เบ—เปˆเบฒเบ™โ€‹เบˆเบฐโ€‹เบ•เป‰เบญเบ‡โ€‹เป„เบ”เป‰โ€‹เบ„เบฅเบดเบโ€‹เปƒเบชเปˆโ€‹เบฅเบนเบโ€‹เบชเบญเบ™โ€‹เปƒเบ™โ€‹เบ‚เบญเบ‡โ€‹เบ—เปˆเบฒเบ™โ€‹
    Tas...
    เบ”เบฒเบงโ€‹เป‚เบซเบผเบ”โ€‹เป€เบžเบ‡ Casterโ€‹
  • เป€เบžเบตเปˆเบกเป€เบ•เบตเบก ยป

Linux เบ„เบณ เบชเบฑเปˆเบ‡

Ad