程式组成要素

程式组成要素

ID:43220625

大小:508.00 KB

页数:65页

时间:2019-10-04

程式组成要素_第1页
程式组成要素_第2页
程式组成要素_第3页
程式组成要素_第4页
程式组成要素_第5页
资源描述:

《程式组成要素》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、程式組成要素Variable:Declarationvs.Definitionconst,operators,expression,assignmentstatementPre-processing(不屬於C/C++)#include#definemacroexpressionControlstatementsConditionalstatements(if),LoopstatementsFunctiondeclaration/definition/invocationLibraryfunctions:I/O,math,stringprocess

2、ing,…蔡文能C/C++程式設計1變數與函數(函式)再談變數(variable)Globalvariablesvs.LocalvariablesStaticlocal,StaticGlobalAuto變數在Stack所以不可以佔太多位置OperatorsandtheirprecedenceControlstatementsFunctionandStandardCLibraryparameterpassingRecursivefunction遞迴函數再談I/Ofunctions蔡文能C/C++程式設計2再談變數Variable變變變變數當然會變才叫變數–廢話

3、!變數命名規則與慣例?averageScore,n,x變數放在電腦的記憶體–何處?與程式一起,與程式分離?–由Linker負責堆疊區(STACK)?嘿洗蝦密碗糕啊?變數的能見範圍(Scope)?或說有效範圍函數(函式)內的變數:Localvariable局部(區域)變數函數外的變數:Globalvariable整體變數變數何時生出?何時死掉?生命期(Lifetime)?蔡文能C/C++程式設計3變數分類依能見範圍(Scope,或說有效範圍)?Local區域vs.Global整體依何時給它位置(binding)Staticvariable:Run之前(com

4、pile/Link)Dynamic:Run之後才會做binding自動要自動還:auto變數(function內沒寫static)手動要:使用malloc或calloc要,用free還(C++用new和delete)auto變數在stack堆疊手動要的(malloc,calloc)在Heap堆積蔡文能C/C++程式設計4變數(Variable)的Scope,Lifetime變數的能見範圍(Scope,或說有效範圍)函數(函式)內的變數:Localvariable局部(區域)變數:只有在函數內有效函數外的變數:Globalvariable(整體變數)Globa

5、lvariable:宣告之後就一直有效變數生命期(Lifetime)?靜態變數從程式開始Run就“出生”Auto變數在進入函數時生出,離開函數時死掉(把記憶體還給系統)沒有宣告static的:Local變數就是Auto變數蔡文能C/C++程式設計5PrimitiveDataType(型別)整數:char,short,long,int,longlongsigned,unsigned(註:longlong在C99才有)實數:float,double,longdouble(C++有bool,C沒有boolean)各佔用幾個byte?k=sizeof(long);s

6、igned?unsigned?printf("%ud",-1);/*印出whatvalue?*/蔡文能C/C++程式設計6變數(Variable)佔用多大記憶體?要看是什麼型別(type)整數型別char一個byte,sizeof(char)等於常數1short二個byte,sizeof(short)等於常數2long四個byte,sizeof(long)等於常數4longlong八個byte(C99才有)int可能等於short也可能等於long實數型別float四個byte,IEEE754/854double八個byte,IEEE754/854longd

7、ouble不一定,至少8bytes蔡文能C/C++程式設計7Global變數vs.Local變數#includeintx=38,y=250;/*Global*/voidsub1(int);/*見後面程式*/intmain(){intx=49;/*Local*/sub1(::x);/*Global的x==38*/sub1(x);/*Local的x==49*/cout<<"x="<

8、nsOK*/}蔡文能C/C++程式設計8Global

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。