📄 c++.txt
字号:
亖 TOPPERS/JSP僇乕僱儖 儐乕僓僘儅僯儏傾儖 亖
乮C++僶僀儞僨傿儞僌乯
乮Release 1.4.1 懳墳丆嵟廔峏怴: 16-Sep-2004乯
------------------------------------------------------------------------
TOPPERS/JSP Kernel
Toyohashi Open Platform for Embedded Real-Time Systems/
Just Standard Profile Kernel
Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
Toyohashi Univ. of Technology, JAPAN
Copyright (C) 2003-2004 by Takagi Nobuhisa
忋婰挊嶌尃幰偼丆埲壓偺 (1)乣(4) 偺忦審偐丆Free Software Foundation
偵傛偭偰岞昞偝傟偰偄傞 GNU General Public License 偺 Version 2 偵婰
弎偝傟偰偄傞忦審傪枮偨偡応崌偵尷傝丆杮僜僼僩僂僃傾乮杮僜僼僩僂僃傾
傪夵曄偟偨傕偺傪娷傓丏埲壓摨偠乯傪巊梡丒暋惢丒夵曄丒嵞攝晍乮埲壓丆
棙梡偲屇傇乯偡傞偙偲傪柍彏偱嫋戻偡傞丏
(1) 杮僜僼僩僂僃傾傪僜乕僗僐乕僪偺宍偱棙梡偡傞応崌偵偼丆忋婰偺挊嶌
尃昞帵丆偙偺棙梡忦審偍傛傃壓婰偺柍曐徹婯掕偑丆偦偺傑傑偺宍偱僜乕
僗僐乕僪拞偵娷傑傟偰偄傞偙偲丏
(2) 杮僜僼僩僂僃傾傪丆儔僀僽儔儕宍幃側偳丆懠偺僜僼僩僂僃傾奐敪偵巊
梡偱偒傞宍偱嵞攝晍偡傞応崌偵偼丆嵞攝晍偵敽偆僪僉儏儊儞僩乮棙梡
幰儅僯儏傾儖側偳乯偵丆忋婰偺挊嶌尃昞帵丆偙偺棙梡忦審偍傛傃壓婰
偺柍曐徹婯掕傪宖嵹偡傞偙偲丏
(3) 杮僜僼僩僂僃傾傪丆婡婍偵慻傒崬傓側偳丆懠偺僜僼僩僂僃傾奐敪偵巊
梡偱偒側偄宍偱嵞攝晍偡傞応崌偵偼丆師偺偄偢傟偐偺忦審傪枮偨偡偙
偲丏
(a) 嵞攝晍偵敽偆僪僉儏儊儞僩乮棙梡幰儅僯儏傾儖側偳乯偵丆忋婰偺挊
嶌尃昞帵丆偙偺棙梡忦審偍傛傃壓婰偺柍曐徹婯掕傪宖嵹偡傞偙偲丏
(b) 嵞攝晍偺宍懺傪丆暿偵掕傔傞曽朄偵傛偭偰丆TOPPERS僾儘僕僃僋僩偵
曬崘偡傞偙偲丏
(4) 杮僜僼僩僂僃傾偺棙梡偵傛傝捈愙揑傑偨偼娫愙揑偵惗偠傞偄偐側傞懝
奞偐傜傕丆忋婰挊嶌尃幰偍傛傃TOPPERS僾儘僕僃僋僩傪柶愑偡傞偙偲丏
杮僜僼僩僂僃傾偼丆柍曐徹偱採嫙偝傟偰偄傞傕偺偱偁傞丏忋婰挊嶌尃幰偍
傛傃TOPPERS僾儘僕僃僋僩偼丆杮僜僼僩僂僃傾偵娭偟偰丆偦偺揔梡壜擻惈傕
娷傔偰丆偄偐側傞曐徹傕峴傢側偄丏傑偨丆杮僜僼僩僂僃傾偺棙梡偵傛傝捈
愙揑傑偨偼娫愙揑偵惗偠偨偄偐側傞懝奞偵娭偟偰傕丆偦偺愑擟傪晧傢側偄丏
------------------------------------------------------------------------
侾丏C++僶僀儞僨傿儞僌偺奣梫
1.1 栚揑
TOPPERS/JSP僇乕僱儖偼丄杮棃C尵岅API傪採嫙偡傞傕偺偱偁傝丄偦偺傑傑偱偼
C++傪梡偄偨傾僾儕働乕僔儑儞奐敪傪峴偆忋偱巟忈偑偁傞丅
C++僶僀儞僨傿儞僌偼丄TOPPERS/JSP僇乕僱儖偑採嫙偡傞僒乕價僗僐乕儖傪C++
偐傜屇弌偡偙偲傪壜擻偵偟丄偐偮TOPPERS/JSP僇乕僱儖忋偱昗弨C++偺婡擻傪
棙梡偱偒傞傛偆偵偡傞傕偺偱偁傞丅
1.2 奐敪娐嫬偲幚峴娐嫬
C++僶僀儞僨傿儞僌偱偼丄GCC摍偺GNU奐敪娐嫬傪巊梡偡傞丅側偍丄Windows忋
偺僔儈儏儗乕僔儑儞娐嫬乮Visual C++乯偱C++傪巊梡偡傞嵺偼丄C++僶僀儞僨
傿儞僌偺婡擻傪昁梫偲偟側偄丅
尰嵼丄C++僶僀儞僨傿儞僌偑僒億乕僩偡傞幚峴娐嫬偼丄MS7727CP01(SH3)偍傛
傃AKI-H8/3069F偱偁傞丅懠偺幚峴娐嫬偱巊梡偡傞偵偼丄僞乕僎僢僩埶懚晹偺
Makefile.config偍傛傃儕儞僇僗僋儕僾僩偺廋惓偑昁梫偲側傞丅
傑偨丄Linux忋偺僔儈儏儗乕僔儑儞娐嫬偱偼巊梡偡傞偙偲偑偱偒側偄丅
1.3 C++僶僀儞僨傿儞僌偺婡擻偺奣梫
昗弨C++偺婡擻偺偆偪丄幚峴娐嫬偵埶懚偡傞晹暘偵偮偄偰丄TOPPERS/JSP僇乕
僱儖偵懳墳偝偣偰偄傞丅嬶懱揑偵偼丄旕儘乕僇儖僆僽僕僃僋僩偺弶婜壔張棟丄
廔椆張棟丄僌儘乕僶儖側new墘嶼巕偲delete墘嶼巕丄椺奜張棟丄偍傛傃僼儕乕
僗僞儞僨傿儞僌娐嫬偵偍偗傞昗弨儔僀僽儔儕娭悢偱偁傞丅
GCC帺懱偑枹僒億乕僩偺婡擻乮export丄儐僯僶乕僒儖暥帤柤摍乯傪曗姰偡傞傕
偺偱偼側偄丅
1.4 C++僶僀儞僨傿儞僌偺巊梡曽朄
TOPPERS/JSP僇乕僱儖偱C++僶僀儞僨傿儞僌傪巊梡偡傞偵偼丄僐儞僼傿僊儏儗
乕僔儑儞僼傽僀儖乮.cfg乯偐傜丄jsp/systask/cxxrt.cfg傪僀儞僋儖乕僪偡傞
偩偗偱傛偄丅乮惷揑API偺INCLUDE偱偼側偔丄僾儘僾儘僙僢僒巜椷偺#include
傪巊梡偡傞偙偲乯
TOPPERS/JSP僇乕僱儖偺configure傪巊梡偡傞応崌丄C++傪巊偆偵偼"-l c++"
僆僾僔儑儞傪晅壛偡傞昁梫偑偁傞丅
俀丏C++僶僀儞僨傿儞僌偺婡擻
2.1 旕儘乕僇儖僆僽僕僃僋僩偺弶婜壔張棟
娭悢偺奜晹偱愰尵偝傟偨僆僽僕僃僋僩乮摿掕偺柤慜嬻娫傗僋儔僗偺惷揑僨乕
僞儊儞僶傪娷傓乯偺僐儞僗僩儔僋僞傪丄婲摦帪偵屇弌偡婡擻傪採嫙偡傞丅
旕儘乕僇儖僆僽僕僃僋僩偺僐儞僗僩儔僋僞偼丄kernel_start娭悢偺屇弌偟傛
傝慜偵幚峴偝傟丄syslog偺婡擻傪巊梡偡傞偙偲偼偱偒側偄丅
傑偨丄僐儞僗僩儔僋僞偺撪晹偱偼丄vsns_ini傪彍偔僒乕價僗僐乕儖傪屇弌偡
偙偲偼偱偒側偄丅
娭悢偺撪晹偱愰尵偝傟偨僆僽僕僃僋僩偼丄婲摦帪偱偼側偔丄愰尵偝傟偨売強
偵嵟弶偵幚峴僷僗偑嵎偟妡偐偭偨偲偒偵僐儞僗僩儔僋僞偑屇弌偝傟傞偨傔丄
婲摦帪偺弶婜壔張棟偵偼娷傑傟側偄丅
偦偆偟偨僐儞僗僩儔僋僞偺屇弌偟偼儅儖僠僞僗僋偵懳墳偟側偄偨傔丄儐乕僓
偼昁梫偵墳偠偰攔懠惂屼傪撈帺偵峴偆昁梫偑偁傞丅
2.2 廔椆張棟
惷揑側僆僽僕僃僋僩乮娭悢撪偱愰尵偝傟偨傕偺傪娷傓乯偺僨僗僩儔僋僞偼丄
std::exit娭悢偺拞偐傜屇弌偝傟傞丅柧帵揑偵std::exit娭悢傪屇弌偝側偄尷
傝丄慡僞僗僋偑廔椆偟偨偲偟偰傕僨僗僩儔僋僞偑屇弌偝傟傞偙偲偼側偄丅
側偍丄kernel_exit娭悢傪屇弌偟偨応崌傕丄std::exit娭悢傪屇弌偟偨応崌偲
摨條偵丄惷揑側僆僽僕僃僋僩偺僨僗僩儔僋僞偼屇弌偝傟傞丅
廔椆帪偺摦嶌弴彉偼丄惷揑API偺VATT_TER偱搊榐偟偨廔椆張棟儖乕僠儞偑屇弌
偝傟偨屻丄std::atexit娭悢偱搊榐偟偨廔椆帪娭悢偑屇弌偝傟丄嵟屻偵僨僗僩
儔僋僞偑屇弌偝傟傞丅
僨僼僅儖僩偺昗弨僗僩儕乕儉乮stdin, stdout, stderr乯傪僒億乕僩偡傞応崌丄
偦傟傜偺僋儘乕僘張棟偼僨僗僩儔僋僞偺屇弌偟屻偵峴傢側偗傟偽側傜側偄丅
乮儐乕僓偺庤偱僇僗僞儅僀僘偡傞昁梫偑偁傞乯
2.3 僌儘乕僶儖側new墘嶼巕偲delete墘嶼巕
TOPPERS/JSP僇乕僱儖偺儅儖僠僞僗僋娐嫬偍傛傃旕儅儖僠僞僗僋娐嫬乮弶婜壔
傑偨偼廔椆張棟帪乯偱摦嶌偡傞new偍傛傃delete墘嶼巕傪採嫙偡傞丅
GCC偼僌儘乕僶儖側new偍傛傃delete墘嶼巕傪std::malloc偍傛傃std:free娭悢
傪梡偄偰幚憰偟偰偄傞偨傔丄NEWLIB偺malloc偍傛傃free娭悢偵攔懠惂屼傪捛
壛偡傞偙偲偱幚尰偟偰偄傞丅
C++僶僀儞僨傿儞僌偼丄C++偺僼儕乕僗僞儞僨傿儞僌娐嫬傪懳徾偲偟偰偄傞偑丄
忋婰偺棟桼偵傛傝丄杮棃僼儕乕僗僞儞僨傿儞僌娐嫬偱偼僒億乕僩偝傟側偄丄
std::malloc偍傛傃std::free娭悢傕寢壥揑偵僒億乕僩偟偰偄傞丅
偍偦傜偔偼std::calloc偍傛傃std::realloc娭悢傕摦嶌偡傞偲巚傢傟傞偑丄専
徹偼峴偭偰偄側偄丅
昗弨C++偺僌儘乕僶儖側new偍傛傃delete墘嶼巕偵偼丄椺奜傪僗儘乕偡傞偙偲
偑側偄丄const std::nothrow_t&傪堷悢偵偲傞攝抲峔暥宆偺傕偺傕偁傞偑丄捠
忢偺傕偺摨條偵巊梡偡傞偙偲偑偱偒傞丅
2.4 椺奜張棟
C++偺尵岅婡擻偱偁傞椺奜張棟婡擻乮try丄catch偍傛傃throw乯傪採嫙偡傞丅
椺奜張棟偼僐儞僷僀儔偺幚憰偵枾愙偵棈傓偨傔丄僐儞僷僀儔帺懱偵僷僢僠偑
昁梫偵側傞丅
椺奜張棟偼丄try偍傛傃catch偺埵抲偲丄throw偐傜catch傑偱偺娫偵懚嵼偡傞
儘乕僇儖僆僽僕僃僋僩偺僨僗僩儔僋僞傪娗棟偡傞昁梫偑偁傞丅偟偨偑偭偰丄
僐儞僷僀儔偵偲偭偰枹抦偺曽朄偱僐儞僥僉僗僩偑愗傝懼傢偭偨応崌偵偼丄椺
奜張棟梡偺娗棟忣曬傕愗傝懼偊傞昁梫偑惗偠傞丅
C++僶僀儞僨傿儞僌偼丄儅儖僠僞僗僋娐嫬偍傛傃旕儅儖僠僞僗僋娐嫬乮弶婜壔
傑偨偼廔椆張棟帪乯偱丄僐儞僥僉僗僩偵墳偠偰娗棟忣曬傪愗傝懼偊傞婡擻傗
摨婜婡擻傪幚尰偟偰偄傞丅
GCC偱偼丄僐儞僷僀儖帪偵-fno-exceptions僆僾僔儑儞傪巜掕偡傞偙偲偱丄椺
奜張棟傪柍岠偵偡傞偙偲偑偱偒傞偑丄偙傟偼僆僾僔儑儞傪巜掕偟偨東栿扨埵
偵懳偟偰偺傒捠梡偡傞偙偲偱偁傝丄儔僀僽儔儕摍偼丄捠忢捠傝丄椺奜張棟偑
巊偊傞応崌偲摨條偵怳晳偆偙偲偵側傞丅偟偨偑偭偰丄new丄dynamic_cast丄
偁傞偄偼typeid墘嶼巕偑幐攕偟偨応崌摍偵偼丄梊婜偣偸岆摦嶌偵偮側偑傞婋
尟惈偑偁傞偨傔丄昁偢偟傕悇彠偟側偄丅
2.5 昗弨儔僀僽儔儕娭悢
僼儕乕僗僞儞僨傿儞僌娐嫬偺C++偱偼丄廔椆張棟偵娭偡傞昗弨儔僀僽儔儕娭悢
偲偟偰丄std::abort丄std::atexit丄偍傛傃std::exit娭悢偑僒億乕僩偝傟傞丅
C++僶僀儞僨傿儞僌偱傕丄偙傟傜3庬椶偺娭悢傪採嫙偟偰偄傞丅
(1) std::abort
std::abort娭悢偼丄惷揑API偺VATT_TER偱搊榐偝傟偨廔椆張棟儖乕僠儞傗丄
std::atexit娭悢偱搊榐偝傟偨廔椆帪娭悢丄僆僽僕僃僋僩偺僨僗僩儔僋僞傪屇
弌偡偙偲側偔丄僔僗僥儉傪堎忢廔椆偡傞丅
僔僗僥儉偺廔椆張棟偼丄儅儖僠僞僗僋摦嶌拞偼僞乕僎僢僩埶懚晹偱掕媊偝傟
傞kernel_abort娭悢偵廬偄丄旕儅儖僠僞僗僋摦嶌拞乮弶婜壔傑偨偼廔椆張棟帪乯
偼NEWLIB偺_exit娭悢偵廬偆丅
C++僶僀儞僨傿儞僌偱偼丄娭悢傊偺億僀儞僞void (*_atabort)(void)偑0埲奜
偵掕媊偝傟偰偄傞応崌丄幚嵺偺廔椆張棟傛傝慜偵偦傟傪屇弌偡傛偆偵側偭偰
偄傞丅
儂僗僩娐嫬偺std::abort偼丄幚嵺偺廔椆張棟偺慜偵std::raise(SIGABRT);傪
屇弌偡偑丄_atabort傪揔愗偵愝掕偡傞偙偲偱摨條偺婡擻傪僄儈儏儗乕僩偡傞
偙偲偑偱偒傞丅
(2) std::atexit
std::atexit娭悢偼丄std::exit傑偨偼kernel_exit娭悢偐傜屇弌偝傟傞廔椆帪
娭悢傪搊榐偡傞丅std::atexit娭悢偱搊榐偟偨娭悢偼丄std::abort娭悢偱廔椆
偟偨応崌傗丄vsns_ini偑TRUE傪曉偡婜娫偵std::exit娭悢傪梡偄偨応崌偵偼丄
屇弌偝傟傞偙偲偑側偄丅
惷揑側僆僽僕僃僋僩偺僨僗僩儔僋僞偼丄幚嵺偵偼std::atexit娭悢傪梡偄傞偙
偲偱幚尰偟偰偄傞丅偨偩偟丄僨僗僩儔僋僞偺屇弌偟偼丄std::atexit娭悢偱搊
榐偝傟偨偦偺懠偺偄偐側傞廔椆帪娭悢傛傝傕屻偵屇弌偝傟傞丅
std::atexit娭悢偱搊榐偱偒傞廔椆帪娭悢偼丄乮僨僗僩儔僋僞偺搊榐傪彍偄偰乯
32屄傑偱偱偁傞丅
(3) std::exit
std::exit娭悢偼丄C++偺昗弨揑側廔椆張棟傪峴偆丅徻嵶側摦嶌偼丄2.2 廔椆
張棟傪嶲徠偺偙偲丅
std::exit娭悢傪梡偄偰廔椆偟偨応崌丄儘乕僇儖僆僽僕僃僋僩偺僨僗僩儔僋僞
偑屇弌偝傟傞偙偲偼側偄丅
俁丏C++幚峴娐嫬偲偟偰偺TOPPERS/JSP僇乕僱儖
3.1 BOOL宆
昗弨C++偵偼丄榑棟宆偱偁傞bool宆偲丄榑棟抣偱偁傞true偍傛傃false偑懚嵼
偡傞丅偟偐偟丄TOPPERS/JSP僇乕僱儖偑C尵岅偱幚憰偝傟偰偄傞偨傔丄尵岅娫
偺屳姺惈傪偲傞堄枴偱傕BOOL宆偵偼int宆傪巊梡偡傞昁梫偑偁傞丅
僇乕僱儖偺僐儞僷僀儖偵C99傪梡偄偨応崌偱傕丄_Bool宆偲bool宆偺娫偵偼丄
尩枾側屳姺惈偑偁傞偲偼尵偄偑偨偄偨傔丄傗偼傝int宆傪巊梡偟偨曽偑柍擄偱
偁傞丅
3.2 僞僗僋偐傜偺椺奜儕乕僋
僞僗僋偺僄儞僩儕娭悢偐傜僉儍僢僠偝傟側偄椺奜偑儕乕僋偟偨応崌偺摦嶌偼
枹掕媊偱偁傞丅
3.3 ATT_INI偲VATT_TER
惷揑API偺ATT_INI偍傛傃VATT_TER偱搊榐偝傟偨娭悢偐傜椺奜偑儕乕僋偟偨応
崌偺摦嶌偼枹掕媊偱偁傞丅
3.4 旕僞僗僋僐儞僥僉僗僩偲僞僗僋椺奜張棟儖乕僠儞
旕僞僗僋僐儞僥僉僗僩偲僞僗僋椺奜張棟儖乕僠儞偱偼丄椺奜張棟丄new偍傛傃
delete墘嶼巕傪巊梡偡傞偙偲偑偱偒側偄丅嶲徠宆偵懳偡傞dynamic_cast傗丄
壖憐娭悢傪帩偮僋儔僗傊偺嶲徠傗億僀儞僞偵懳偡傞typeid傕丄椺奜偑敪惗偡
傞壜擻惈偑偁傞偨傔丄巊梡偡傞偙偲偑偱偒側偄丅傑偨丄昗弨儔僀僽儔儕娭悢
傪屇弌偡偙偲傕偱偒側偄丅
側偍丄僞僗僋椺奜嫋壜忬懺偱帺僞僗僋偵懳偡傞ras_tex偵傛偭偰屇弌偝傟偨僞
僗僋椺奜張棟儖乕僠儞偵尷傝丄忋婰偺惂栺偼庴偗側偄丅偨偩偟丄僞僗僋椺奜
張棟儖乕僠儞偐傜椺奜傪儕乕僋偟偨応崌偺摦嶌偼枹掕媊偱偁傞丅
3.5 僒乕價僗僐乕儖偺椺奜巜掕
TOPPERS/JSP僇乕僱儖偑採嫙偡傞慡僒乕價僗僐乕儖偼椺奜傪僗儘乕偡傞偙偲偑
側偄偨傔丄椺奜巜掕throw()偑晅壛偝傟傞丅
偙傟偵傛傝丄椺奜張棟偺偨傔偺僥乕僽儖偑惗惉偝傟傞偙偲傪嵟彫尷偵梷偊傜
傟傞応崌偑偁傝丄庡偲偟偰嬻娫岠棪偺岦忋偑婜懸偱偒傞丅
係丏奐敪娐嫬偺峔抸
C++奐敪娐嫬偺峔抸偼丄婎杮揑偵偼乽GNU奐敪娐嫬峔抸儅僯儏傾儖乿偺撪梕偵
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -