版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、無編號警告類型:1、Sat Jun 23, 2012 17:41:05: The stack pointer for stack 'Stack' (currently Memory:0xF5336) is原因: IAR相關(guān)設(shè)置:Tools->Option->Stack->Warn when stack pointer is out of bounds. 2、無法查看結(jié)構(gòu)體/共同體/聯(lián)合體 變量Syntax error, unexpected $end, expecting COLON2 column 1&
2、#160; struct drpoint uint16 x; uint16 y; drpoint10; 改成: struct uint16 x; uint16 y; drpoint10; 參考: UESTC 2012.12 IAR 各版本BUG
3、錯誤修正歷史:ftp:/efo- software/EWAVR32-KS-CD-220A/doc/common/doc/CorrectedProblems.pdf有編號警告類型: Errore16: Segment XDATA_Z (size: 0x19a1 align: 0) is too long for segment definition. At least 0xe4c more bytes needed. The problem occurred while processing the segment placement command"-Z(XDATA)XDA
4、TA_N,XDATA_Z,XDATA_I=_XDATA_START-_XDATA_END", where at the moment of placement the available memory ranges were "XDATA:f1ff-fd53"Reserved ranges relevant to this placement:XDATA:f000-f1fe XSTACKXDATA:f1ff-fd53 XDATA_NBIT:0-7 BREGBIT:80-97 SFR_ANBIT:a8-af SFR_ANBIT:b8-c7 SFR_ANBIT:d8-
5、df SFR_ANBIT:e8-ef SFR_ANA:其實這個問題并不是你的程序本身有問題,主要是因為你編寫的程序太大了,超出了芯片本身的定義。今天在群里學習了一招,就是將數(shù)組定義到code里,我們看一下例子。我們定義一個5100個元素的數(shù)組,有以下兩種方法:mermaid提出的方法是:typedef unsigned char const _code INT8U;extern INT8U shuzi5100;文晶提出的方法是INT8U code shuzi5100;這兩種方法其實效果是一致的,定義完數(shù)組之后,調(diào)用的部分就是需要用指針來調(diào)用數(shù)組里面的數(shù)值了。Errore16: Segment
6、DATA16_I (size: 0xa80 align: 0x1) is too long for segment definition. At least 0x27f more bytes needed. Thepro××em occurred while processing the segment placement command"-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,HEAP+_HEAP_SIZE=0200-0A00", where at the moment of placement the ×
7、15;aila××ememory ranges were "CODE:200-A00"經(jīng)過驗證是由于RAM耗盡,程序里估計有很大的數(shù)據(jù)量,最好使用const定義到FLASH里面,問題基本可以解決。Errore16: Segment DATA16_Z (size: 0x6b9 align: 0x1) is too long for segment definition. At least 0x317 more bytes needed. The problem occurred while processing the segment place
8、ment command "-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,TLS16_I,DATA16_HEAP+_DATA16_HEAP_SIZE=0200-09FF", where at the moment of placement the available memory ranges were "CODE:5ce-5ff,CODE:602-605,CODE:609-60b,CODE:60d-60d,CODE:60f-61b,CODE:61e-63f,CODE:642-645,CODE:649-64b,
9、CODE:64d-64d,CODE:64f-65b,CODE:65e-9ff" Reserved ranges relevant to this placement:可能的原因:1、設(shè)置的某個數(shù)組過大,超過了設(shè)置的堆棧。 2、設(shè)置的堆棧不夠大 3、選擇的型號不對(編寫的程序是用在RAM較大的一個單片機
10、上的,IAR里選擇的卻是RAM較小的一個型號)UESTC 2013.3.8 2Q: 燒寫程序時無法跳入斷點為什么我每次燒程序都出現(xiàn):The stack plug-in failed to set a breakpoint on "main". The Stack window will not be able to display stack contents. (You can change this setting in the Tool>Options dialog box.)的警告。但是程序能燒進去,只是不能調(diào)試。A:確認設(shè)置沒有問題(和好
11、用的工程相比)這是設(shè)置不對,請找下面順序修改:iar->options->linker->output->format;選擇 Debug information for c-SPY選項 3Q: 錯誤提示:Fatal ErrorCp001: Copy protecTIon check, No valid license found for this product 20 A:可以將IAR全部安裝上,但是在編譯文件時卻會報這個錯,原因是安裝的時候沒有把注冊機的0x.字串的小寫字母改為大寫字母。 4Q:“Errore16:
12、Segment CSTACK (size: 0x50 align: 0x1) is too long for segment definition. At least 0x50 more bytes needed. The problem occurred while processing the segment placement command "-Z(DATA)CSTACK+_STACK_SIZE#", ”A:此錯誤是所定義的全局變量和數(shù)組緩沖區(qū)等所占的RAM超出硬件支持所致:size: 0x50為超出的大小。只要減少不不要的全局變量和盡量縮小數(shù)組緩沖區(qū)就可以了!
13、160;5Q: 7Q: ErrorPe018: expected a ")" C:Documents and SettingsAdministrator桌面CraneCrane塔吊防碰撞系統(tǒng)1.1版(SIM908 傾角查詢)5438A塔吊防碰撞1.1api_function.h 5 1、函數(shù)或者語句中有變量名復(fù)用:#define length 50
14、0; / 吊臂長度extern int dec_to_bcd(int dec_dat, unsigned char *bcd, int length);將以上的變量名之一換做別的即可解決。 UESTC 2012.3.27 Errore27:(變量沒有extern聲明外部可調(diào)用) uestcErrore27: Entry "ER_WARN" in module AD () redefined in module FINGERPRINT ()解決方法是把變量定義在其中一個cpp文件里面,然后在另一個文件里面用extern來
15、引用。sample:文件一:int a=0;文件二:extern int a; /此處不能使他等于某個數(shù)就可以了,如果此處a再賦值extern int a=0;就會報錯e27 以為我在x.h文件中定義有變量,然后x.h放入 config.h中,config.h被其他的各個.c文件包含,就造成了,x.h中的變量在各個.c中定義,造成了重復(fù)定義。 UESTC 2012.3.27相關(guān)問答: 14Q:Errore46: Undefined external "_program_start" referred in
16、?ABS_ENTRY_MOD ( )A:該問題應(yīng)該是IAR設(shè)置問題,具體設(shè)置如下:Project->Option->Linker->Config 勾選"Override default program"再選擇"Defined by application" B、 static (const)變量是不能被外部文件調(diào)用的 ( ? ) C、只包含了.h文件, .c文件沒有添加進工程 從debug切換到release出現(xiàn)錯誤:release不會自動繼承debug的設(shè)置
17、,需要自己重新設(shè)置:snprintf、fmax、fmin這些函數(shù)都能在IAR幫助中找到,但是卻出現(xiàn)下面錯誤: Errore46: Undefined external "fmax" referred in cacu_protect ( C:Documents and SettingsAdministrator桌面塔吊安全監(jiān)控系統(tǒng)-終版塔吊安全監(jiān)控系統(tǒng)-終版ReleaseObjcacu_protect.r43 )Errore46: Undefined external "fmin" referred in cacu_protect ( C:Doc
18、uments and SettingsAdministrator桌面塔吊安全監(jiān)控系統(tǒng)-終版塔吊安全監(jiān)控系統(tǒng)-終版ReleaseObjcacu_protect.r43 )Errore46: Undefined external "snprintf" referred in gprs_8 ( C:Documents and SettingsAdministrator桌面塔吊安全監(jiān)控系統(tǒng)-終版塔吊安全監(jiān)控系統(tǒng)-終版ReleaseObjgprs_8.r43 )Error while running Linker錯誤原因:鏈接庫的設(shè)置不對: ErrorPe077
19、:this declaration has no storage class or type specifier 不同的版本,就有不同的寫法,就像環(huán)境不一樣,中斷函數(shù)的名字也不一樣,我遇到過這樣的情況(兩個不同版本下定時器初始化時寄存器的名稱不同). 如I/O口中斷函數(shù)的名的兩種版本: 版本1:interruptPORT2_VECTOR void PORT2 (void) 版本2:#pragma vector=PORT1_VECTOR
20、; _interrupt void PORT1_ISR (void)2012.2.x UESTC8Q:ErrorPe136: struct "<unnamed>" has no field "SampleApp_Periodic_DstAddr" D:Program FilesTexas InstrumentsZStack-1.4.3-1.2.1ProjectszstackSamplesSampleAppSourceSampleApp.c 417/-/afAddrType
21、_t dstAddr;dstAddr.addrMode = afAddrBroadcast;dstAddr.addr.shortAddr = 0xFFFF; / 廣播發(fā)送 cdwxldstAddr.endpoint = SAMPLEAPP_ENDPOINT; /error所在/-/A:我們看看afAddrType_t這個結(jié)構(gòu)就明白錯在哪里了。typedef structunionuint16 shortAddr; addr;afAddrMode_taddrMode;byteendPoint; afAddrType_t;居然是 endPoint 大小寫錯誤, 。 9Q:我最開始也是IA
22、R仿真時找不到main函數(shù),顯示:Fri Jun 11 14:37:00 2010: Error (col 1): Unknown or ambiguous symbol. mainFri Jun 11 14:37:01 2010: Error (col 1): Unknown or ambiguous symbol. mainFri Jun 11 14:37:01 2010: Couldn't go to 'main'.之后在project>options>linker里面的format設(shè)成debug,沒有這個問題了,但是程序又不能通過TI的那個Flash
23、 Programmer下載到板子里了,說是Could not open specified HEX fileA:這個燒錄工具只認release code. 而且擴展名必須是.hex。所以要用這個燒錄工具來燒錄必須做兩件事:1. output file設(shè)為release version2. output file 擴展名改為.hex, 默認的是.a51測試學習階段可以不用.但產(chǎn)品量產(chǎn)就必須生成二進制文件.同時programmer還有些其它的功能會常用的 ErrorPe142: expression must have pointer-to-object type
24、表達式兩邊的類型不一樣。2012.2.x uestc例如: “編譯的錯誤是指第一個*的后面應(yīng)該是指針,卻給了是非指針表達式。如果p是個指針,那么*(p+i)是p后面第i個域或單元的元素,這個域與p所指的變量類型有關(guān),也就是說'*(p+i)+j'是數(shù),而非指針。與*結(jié)合就錯了。 ” C+的該錯誤:ErrorPe148:variable "TA1R_OVERFLOW" has already been initialized "unsigned char TA1R_OVERFLOW=0; " 聲明可外部調(diào)用需要賦
25、值 ErrorPe159: declaration is incompatible with previous 沒加頭文件,或者主函數(shù)內(nèi)有子函數(shù),而子函數(shù)定義在主函數(shù)后邊而木有在主函數(shù)前聲明一下。 ErrorPe169: expected a declaration錯誤原因可能性:1、void read_gprs_return();定義函數(shù)的時候,結(jié)尾多了一個分號:;。 ErrorPe852:ErrorPe852:expression must be a pointer to a complete object type
26、0;請教關(guān)于結(jié)構(gòu)體數(shù)組的引用出錯yanzhongwang2006-02-24, 14:30定義結(jié)構(gòu)體數(shù)組var.c:struct StructDisDataunsigned int AddrDisData;unsigned int TypeDisChar;unsigned int TypeDisUnit;unsigned char LengthDisData;const struct StructDisData StrDisData254=.;var.h:const extern struct StructDisData StrDisData254;在Lunxian.c中引用:#include
27、 "var.h"unsigned int vAdd;void Sub1(void)unsigned int disptr;disptr =.;vAdd =StrDisDatadisptr.AddrDisData; /編譯時在此處出錯 ErrorPe852: expression must be a pointer to a complete object type各位大蝦請幫我分析一下 謝謝!erlking2006-02-24, 14:41改成vAdd =StrDisDatadisptr>AddrDisData;試試?yanzhongwang2006-02-24, 1
28、4:58謝謝erking這么快的回復(fù)!我改了試了一下 還是一樣的錯誤好像->是用指針方式調(diào)用才用到li_hai_tao9302006-02-24, 23:19聲明結(jié)構(gòu)體時用typedef 定義結(jié)構(gòu)類型名試試iltgcl2006-02-27, 08:36將結(jié)構(gòu)定義struct StructDisDataunsigned int AddrDisData;unsigned int TypeDisChar;unsigned int TypeDisUnit;unsigned char LengthDisData;放到頭文件中,即.h文件中yanzhongwang2006-02-27, 10:59謝
29、謝樓上的各位!用iltgcl的方法試了一下 編譯沒問題了!yanzhongwang2006-02-27, 11:22改正后的文件結(jié)構(gòu)如下var.c:var.h:struct StructDisDataunsigned int AddrDisData;unsigned int TypeDisChar;unsigned int TypeDisUnit;unsigned char LengthDisData;Lunxian.c:#include "var.h"unsigned int vAdd;const struct StructDisData StrDisData254=.;
30、void Sub1(void)unsigned int disptr;disptr =.;vAdd =StrDisDatadisptr.AddrDisData; 再次謝謝各位工程師的熱心指點!readyaiming2006-03-03, 15:23不錯不錯。ErrorPe260: explicit type is missing ("int" assumed) C:Documents and SettingsAdministrator桌面下位機塔吊防碰撞系統(tǒng)1.1版(SIM908 傾角查詢)5438A塔吊防碰撞1.1LCD(Sm
31、allFonts).c 898 問題例子1:定義一個函數(shù),落了紅字部分聲明void DrawSector(int x,int y,int R1,int R2,float Ds ,float De,int fill,uchar color) 11Q:ErrorPe513: a value of type "int (*)(uint8, uint8)" cannot be assigned to an entity of type "halUARTCBack_t"
32、D:Program FilesTexas InstrumentsZStack-1.4.3-1.2.1Componentsstacksapisapi.c 968A:估計是一個函數(shù)本沒有返回值即void類型,而你卻將這個函數(shù)賦給了一個int型變量了。static rxCB( uint8 port,uint8 event )改為static void rxCB( uint8 port,uint8 event )12Q: Fatal Errore72: Segment BANK_RELAYS must be defined in a segment definition option (-Z
33、, -b or -P)A:使用無線龍的串口互發(fā),發(fā)現(xiàn)上述錯誤,原因是版本太高,具體原因不清,下載一下7.20H就可以了 Fatal Errore89: Too much object code produced (more than 0x1000 bytes) for this package是4K限制版,請使用有非限制版的。 IAR常見錯誤請先從如下幾方面入手:1序列號是否正確。2使用版本是否正確,應(yīng)該使用7.30B打開的工程文件不能使用7.20H打開。 3盡量不要使用中文路徑。
34、; 4ZigBee協(xié)議棧文件夾需要放在IAR安裝盤根目錄下。 5請確定當前編譯文件夾是否具有讀寫權(quán)限。 6使用的版本是否是限制版 Fatal ErrorPe005: could not open source file "stdio.h" 這是什么原因?謝謝了是因為頭文件路徑不對造成,改正的方法是在設(shè)置選項卡的C/C+ Compiler -
35、> Preprocessor選項里,將$TOOLKIT_DIR$INCCLIB添到Include paths中。($TOOLKIT_DIR$指IAR的安裝路徑,一般用到標準庫函數(shù)時要將它寫入Include paths里面) Fatal ErrorPe005: could not open source file "hal.h" C:UsersuserDesktop例子程序無線通信綜合測試Librarycc2430HALsourcesetTimer34Period.c 7先檢查 C:UsersuserDesktop例子程序無線通信綜合測試Libra
36、rycc2430HALsource有無setTimer34Period.c 這個文件,若有,則是因為IAR對中文路徑支持不好的緣故,你把這個工程復(fù)制到全英文路徑下編譯應(yīng)該就不會報錯了。Fatal ErrorPe1696: cannot open source file "config.h"注意config.h 存放的位置,最好與main同處于一個文件夾15Q:Fatal ErrorCp001: Copy protection check, No valid license found for this product 24XP下裝的IAR,到了Win
37、7下出來的問題。A:這個問題是使用注冊機帶來的,系統(tǒng)換了,本機ID也要改了。、單擊IARID.EXE得到本機的ID號、右鍵點Key.cmd,選擇編輯,打開,將ID修改為本機ID、運行KEY.cmd,在key.txt中的含有EW8051-EV的序列號就是7.30的序列號16Q:在用iar debug 下載進已有程序板子出現(xiàn)的A:將核心板與擴展板分開,只燒寫核心板。 17Q:A:自小峰關(guān)于協(xié)議棧XDATA溢出的小結(jié)(1)減小程序;(2)把配置文件f8w2430.xcl/f8w2430pm.xcl中的-D_CODE_END改大點:*f8w2430.xcl:/ CODE/ These set
38、tings determine the size/location of the ROOT segment./ Increase _CODE_END to increase ROOT memory, i.e. for constants.-D_CODE_START=0x0000 / Code size = 128k for CC2430-F128-D_CODE_END=0x4000 / Last address for ROOT bank*f8w2430pm.xcl:/ CODE/ These settings determine the size/location of the ROOT s
39、egment./ Increase _CODE_END to increase ROOT memory, i.e. for constants.-D_CODE_START=0x0000 / Code size = 128k for CC2430-F128-D_CODE_END=0x29FF /(原0x28FF) Last address for ROOT bank WarningPe001: last line of file ends without a newline F:emoTionIARPK升級CC1110-8main.c 179A:在使用IAR時常常會彈出類似
40、這樣一個警告,其實只要在最后一行多加一個回車就不會再有這個警告了. 6Q:在編寫一個串口程序時:編譯沒有錯,但MAKE時就出現(xiàn)下面的錯誤undefined external“UART1_ISR”referred in startupA:串口1中斷向量沒有定義,實際上是串口1中斷向量定義其他名稱,而不是UART1_ISR. 出現(xiàn)這樣的調(diào)試IAR錯誤時:Fatal error: Unknown exception in driver (#E1),是因為IAR軟件沒有跟Texas Instruments文件放在同一個系統(tǒng)盤下 Warninw6: &
41、#160; Type conflict for external/entry "_A_PORTD", in module _ultrasonic against external/entry in module _ST7920; class/struct/union types have different numbers of fields/bases
42、 你看看你的源代碼里函數(shù)是不是這樣寫:void XXX(void)而.h代碼里這樣聲明:void XXX();.h代碼應(yīng)該這樣聲明:void XXX(void); 分析:一般Warninw6:問題出在頭文件里頭,可能有:1、聲明了外部變量,但是用到那個函數(shù)的.c文件沒有包含那個頭文件2、源代碼函數(shù)和.h里聲明的函數(shù)不一樣:.c里 void XXX(void),頭文件中:void XXX();或者:筆誤.hz中 Wight_warn (); .c中: Weight_warn();3、在.C中定義了,但是沒有exte
43、rn void clean_uart2_rx_buff();聲明外部可調(diào)用,然后外部調(diào)用了它,就有可能出現(xiàn)。 2012.3.26 UESTC WarningPe009: nested comment is not allowed 注釋最好不要嵌套例如注釋1后半部*/ 就是最好不要這樣 uestc WarningPa082: undefined behavior: the order of volatile accesses is undefined
44、in this statement 運算符兩邊都是volatile變量的警告 這警告有意義.volatile 意思是:易變的。用volatile修飾的變量一般不直接參與運算(在運算中值可能在變化),volatile就以為這個變量在運算過程中有可能已經(jīng)改變了例如:想計算a * b 要這樣:volatile unsigned char a; volatile unsigned char b; unsigned char x,y; x = a;y = b; return (x * y);復(fù)制代碼建議使用另外一個變量參與計算:volatile char VVV = 9;
45、 char fun() char xxx; char yyy = 9; xxx = VVV; return xxx * yyy復(fù)制代碼 WarningPe175: 編譯錯誤:WarningPe175: subscript out of range 原因: 定義了 float value6 ; 既我們定義的了 value0、 value1 value5,默認從0開始的,而實際中我們用到了value6,越界了。2011年 6月2日 WarningPe177: function "rxCB" was
46、declared but never referenced D:Program FilesTexas InstrumentsZStack-1.4.3-1.2.1Componentsstacksapisapi.c 982A:函數(shù)雖定義但從未被引用(使用)。如果你需要使用該函數(shù),就需要檢查;否則略過。13Q:Fri Jun 11 14:37:00 2010: Error (col 1): Unknown or ambiguous symbol. mainFri Jun 11 14:37:01 2010: Error (col 1): Unknown or ambiguous symbol. mai
47、nFri Jun 11 14:37:01 2010: Couldn't go to 'main'.A:project>options>linker 看看里面的format是不是設(shè)成debug詳見 WarningPe186: pointless comparison of unsigned integer with zero 無符號整數(shù)不可能小于0的10Q:WarningPe188: enumerated type mixed with another type D:Program
48、 FilesTexas InstrumentsZStack-1.4.3ProjectszstackSamplesSampleAppSourceSampleApp.c 206A: SampleApp_Periodic_DstAddr.addrMode = Addr16Bit;/(afAddrMode_t)afAddrGroup;typedef enumafAddrNotPresent = AddrNotPresent,afAddr16Bit = Addr16Bit,afAddrGroup = AddrGroup,afAddrBroadcast = AddrBroadcast afAddrMode
49、_t;問題就在于Addr16Bit未加afAddrMode_t這個套子。 WarningPe1072: a declaration cannot have a label 在switch case:后直接定義變量了 switch (check_storce_status() case 0: break; case 1: int fash; break; case 2: break; 解決方法:前后加個括號即可。&
50、#160;switch (check_storce_status() case 0: break; case 1: int fash; break; case 2: break; UESTC 2012.3.19 Fatal ErrorPe1696:Fatal ErrorPe1696: cannot open source file "time.h" C:Documents
51、and SettingsAdministrator桌面塔吊安全監(jiān)控系統(tǒng)-終版塔吊安全監(jiān)控系統(tǒng)-終版config.h 53 searched: "C:Documents and SettingsAdministrator桌面塔吊安全監(jiān)控系統(tǒng)-終版塔吊安全監(jiān)控系統(tǒng)-終版"searched: "C:Program FilesIAR SystemsEmbedded Workbench 6.0 Evaluation_0430incclib"searched: "C:Program FilesIAR SystemsEmbedded Workben
52、ch 6.0 Evaluation_0430inc"Error while running C/C+ compiler 出錯原因是編譯器在上面列出的路徑內(nèi)的文件夾下面找不到time.h 首先確定是不是真的存在這兩個頭文件(沒有就自行下載或者編寫吧)。然后可以采取以下兩種解決方法:1、include時寫上完整的路徑名。如:#include "D:headersmsp430x14x.h"2、在編譯器的默認頭文件路徑中添加你自定義的頭文件存放路徑。一般是你所用的IDE的某項功能,這就看你用的是什么IDe了。3、將頭需要的頭文件復(fù)制到編譯器搜索的目錄(
53、一般debug能通過,release通不過的時候多是這個原因):第一步:找頭文件所在的地方第二步:復(fù)制(另存為)到IAR 搜索的目錄:searched: "C:Program FilesIAR SystemsEmbedded Workbench 6.0 Evaluation_0430incclib" UESTC 2013.3.11 18.2 編譯警告消息下表列出了編譯警告消息編號警告消息建議0 Macro name redefined 宏 name被重新定義用#define 定義的符號被用不同的參數(shù)或形式表重新定義1 Macro formal parta
54、meter name isnever referenced 宏形式參數(shù) name被重新定義#define 形式參數(shù)從未在參數(shù)字符串中出現(xiàn)2 Macro name is already#undef 宏name被重新定義#undef 被用于不是宏觀的符號3 Macro name called with emptyparameter(s) 用空參數(shù)調(diào)用宏 name用零長度(zero-length)的參數(shù)不清調(diào)用在#define 中定義的參數(shù)化宏觀4 Macro name is called recursively;not expanded 宏 name 被遞歸調(diào)用不擴展遞歸宏調(diào)用使預(yù)處理器停止該宏的
55、進一步擴展5 Undefined symbol name in #if or#elif; assumed zero 在#if 或#elif中未定義的符號 name;假設(shè)為零在#if 或#elif 表達式中把非宏符號作為零來處理被認為是錯誤的編程實踐使用以下兩個中任一個#ifdef symbol或#if defined(symbol)6 Unkown escape seguence c ;assumec 未知的轉(zhuǎn)義序列c 假設(shè)為c在字符常數(shù)中發(fā)現(xiàn)反斜杠 或字符文字后隨未知的轉(zhuǎn)義字符7 Nested comment found without usingthec option 發(fā)現(xiàn)嵌套的注釋未使用
56、c選項在注釋中發(fā)現(xiàn)字符序列無條件轉(zhuǎn)移或返回在一條或多條語名之前使得這條或多條語句從來不會被執(zhí)行21 Unreachable statement(s) atunreachable label name 在未卜先知被引用的標號name處不能到達的語句例如Break;Here:I=2;無條件轉(zhuǎn)移或返回在有標號的一條或多條語句之前但是標號從未被引用所以這條或多余語句從來不會被執(zhí)行22 Non-void function: explicit “return”<expression> expected 非空函數(shù)顯式的 “return”<表達式> 被預(yù)期非空non-void 函數(shù)產(chǎn)生
57、隱含返回這可能是從循環(huán)或開關(guān)語句中非預(yù)期的退出注意不帶default 的開關(guān)語句總是被編譯器當作可退出的而不管case 的結(jié)構(gòu)如何23 Undeclared function name; assumed“extern” “int” 未聲明的函數(shù)name;假設(shè)為“extern” “int”對未聲明函數(shù)的引用導致使用缺省的聲明函數(shù)被假設(shè)為具有K&R 類型具有外部存儲類別并返回int 整型24 Static memory option converts local“auto” or “register” to “static”(靜態(tài)存儲器選項把局部 “auto”或“register”轉(zhuǎn)換為
58、“static”)用于靜態(tài)存儲器分配的命令行選項使auto 自動和register 寄存器聲明被當作static 靜態(tài)來處理25 Inconsistent use of K&R functionvaryingnumber of parameters(K&R 函數(shù)的不一致使用-改變了參數(shù)的數(shù)目)用改變了的參數(shù)類型調(diào)用K&R 函數(shù)26 Inconsistent use of K&R functionchangingtype of parameter K&R 函數(shù)用改變了的參數(shù)類型調(diào)用K&R 函數(shù)MSP430 系列C 編譯器編程指南利爾達電子中國有限公司 TELFAX- 116 -的不一致使用改變了參數(shù)的類型例如myfunc(34);myfunc(34.6);27 Size of “exte
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年城市照明項目LED路燈購銷合同
- 2024年建筑工程分包協(xié)議書
- 2024年云計算服務(wù)互操作性測試合同
- 2024廣告發(fā)布委托合同模板樣本
- 2024年工程質(zhì)量檢測合同標準
- 2024年度物業(yè)服務(wù)合同:日常房屋租住過程中的管理與維護
- 2024年度旅游開發(fā)項目合同
- 2024年度影視制作與發(fā)布協(xié)議
- 兒子結(jié)婚上父親致辭
- 習慣為主題的演講稿3篇
- 愛心助學基金會章程樣本
- 藥物性肝損傷的藥物治療
- Python繪圖庫Turtle詳解(含豐富示例)
- 2010年408真題及答案解析
- 【課題研究設(shè)計與論證報告】深度學習視角下幼兒園自主游戲支持策略的實踐研究
- 0~36個月兒童中醫(yī)藥健康管理服務(wù)
- 第三章藥物的化學結(jié)構(gòu)與藥代動力
- 智慧樹關(guān)愛生命-自救與急救技能章節(jié)習題及答案
- 讓數(shù)據(jù)成為生產(chǎn)力-數(shù)據(jù)全生命周期管理
- “工匠精神”視域下的高職院校學生職業(yè)素養(yǎng)教育的路徑研究課題開題報告
- 不要等到畢業(yè)以后(升級版)
評論
0/150
提交評論