FunCodeC開發常用API剖析_第1頁
FunCodeC開發常用API剖析_第2頁
FunCodeC開發常用API剖析_第3頁
FunCodeC開發常用API剖析_第4頁
已閱讀5頁,還剩4頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、FunCode C 開發常用APIC語言標準庫函數在實驗中,我們需要用到一些 C 語言標準庫函數,主要用于字符串處理,獲得隨機值,處理數學函數等。Math.h函數原型功能與返回值參數說明與應用舉例publicstaticdouble返回兩點之間的正x:點的 x 坐標atan2(切值y:點的 y 坐標double y, double xfloat ftan) ;= atan2(fMouseY-fY),(fMouseX-fX);float sqrt(功能:計算平方根sqrt(9) = 3float x返回值: x 的平方根);Stdio.h函數原型功能與返回值參數說明與應用舉例int sprint

2、f(把格式化的數據寫buffer : char 型指針,指向將要寫入的char *buffer,入某個字符串緩沖字符串的緩沖區。constchar*format,區。format: char 型指針,指向的內存里面 argument返回值:字符串長存放的將要格式字符串。);度( strlen)argument. :可選參數, 可以是任何類型的數據。sprintf(szUfoName,"ufo_%d_%d",iLoop, iTotalUfoCount );String.h函數原型extern char *strstr(char *str1,char *str2);extern

3、 int strcmp(const char *s1,const char * s2);功能與返回值參數說明與應用舉例找出 str2 字符串strstr(szName,“feichong ”) != NULL在 str1 字符串中說明 szName 中包含 feichong第一次出現的位置可以用來判斷前一個字符串包含后面(不包括 str2的一個字符串串結束符)。返回值:返回該位置的指針,如找不到,返回空指針。比較字符串 s1和strcmp(szName,“feichong_0 ”) = 0s2。說明 szName 與 feichong_0 相等當 s1<s2 時,返回可以用 來判斷前后兩

4、個字符串的值值<0相等當 s1=s2 時,返回extern char *strcpy(char *dest,值=0當 s1>s2 時,返回值>0把從src 地址開始strcpy( big“”,ufo ” );且含有 NULL結束前一個字符串的內容變為”ufo”const char *src);void *memcpy(constchar* dest,constchar *src,size_tn,);extern unsigned int strlen(char *s);符的字符串復制到以 dest 開始的地址空間返回指向 dest 的指針。從源 src 所指的內存地址的起始位

5、置開始拷貝 n 個字節到目標 dest 所指的內存地址的起始位置中函數返回 dest 的值計 算 字 符 串s 的( unsigned int 型)長度,不包括 '0'在內返回 s 的長度,不包括結束符NULL 。memcpy( m_iGridData,m_iLevelData2,sizeof(int) * GRID_COUNT * GRID_COUNT );intiStrLen=strlen( ufo“” );FunCode C API播放靜態精靈的APIAPIint dCloneSprite(constchar *szSrcName, const char *szMyNam

6、e );VoiddSetSpriteWidth(const char*szName, const float fWidth );功能與返回值1 表示克隆成功, 0 克隆失敗。失敗的原因可能是在地圖中未找到對應名字的精靈設置精靈外形寬度參數說明szSrcName:被復制的精靈模板的名稱szMyName:指向我們復制出來精靈的名字數組 szName:指向我們要設置寬度的精靈的名字fWidth :寬度值,大于0float獲取精靈外形寬度szName:指向要獲得寬度的dGetSpriteWidth(const char 返回值:精靈寬度值精靈*szName );Void設置精靈外形高度szName:

7、指向要 設置 高度的dSetSpriteHeight(const精靈的名字char*szName,constfloatfHeight :精靈高度值fHeight);float獲取精靈外形高度szName:指向要獲得高度的dGetSpriteHeight(const精靈的名字char *szName);void設置精靈移動速度szName:指向要設置速度的dSetSpriteLinearVelocity(c精靈的名字onstchar*szName,constfVelX : X 方向速度floatfVelX,constfloatfVelY : Y 方向速度fVelY);float獲取精靈 X 方向

8、速度szName:指向要獲得速度的dGetSpriteLinearVelocityX(精靈的名字const char *szName);floatszName:指向要獲得速度的dGetSpriteLinearVelocityY(獲取精靈 Y 方向速度精靈的名字const char *szName);void按角度朝向設置精靈szName:指向要設置角速度dSetSpriteLinearVelocityPo移動速度的精靈的名字lar(const char *szName,fSpeed :移動速度const float fSpeed,fPolar:角度朝向const float fPolar);v

9、oid設置精靈是否可以發szName:指向要設置發送碰dSetSpriteCollisionSend(co送(產生)碰撞撞的精靈的名字nst char *szName, const intiSend : 1可以發送碰撞iSend);0不可以發送碰撞void設置精靈是否可以接szName:指向要設置接收碰dSetSpriteCollisionReceive受碰撞撞的精靈的名字( const char *szName,iReceive:const int iReceive;1可以接受碰撞);0 不接受碰撞Void dSetSpriteWorldLimit(設置精靈的世界邊界szName: 指向要

10、設置 世界邊const char *szName,坐標限制及碰撞模式界和碰撞模式的精靈的名字const EWorldLimit Limit,Limit:碰撞到世界邊界之后const float fLeft,的響應模式,如果為NULL,const float fTop,碰撞反應由代碼決定。其它const float fRight,值見 EWorldLimitconst float fBottomfLeft:邊界的左邊X 坐標);fTop :邊界的上邊 Y 坐標fRight:邊界的右邊X 坐標fBottom :邊界的下邊 Y 坐標voiddSetSpriteFlipX(設置精靈圖片X 方向szNa

11、me: 指向要 翻轉 的精靈const char *szName,翻轉顯示的名字const int iFlipXiFlipX : 1翻轉);0不翻轉 ( 恢復原來朝向 )voiddSetSpriteVisible(設置精靈隱藏或者顯szName: 指向要 隱藏 的精靈const char *szName,示 ( 可見不可見 )的名字const int iVisibleiVisible : 1 可見);0 不可見void dDeleteSprite(在地圖中刪除與本對szName: 指向要 刪除 的精靈const char *szName);象實例關聯的精靈的名字void dSpriteMove

12、To(讓精靈按照給定速度szName: 指向要 移動 的精靈const char *szName,移動到給定坐標點的名字const float fPosX,fPosX :移動的目標X 坐標值const float fPosY,fPosY :移動的目標Y 坐標值const float fSpeed,fSpeed :移動速度const int iAutoStopiAutoStop:移動到終點之后);是否自動停止。 1 表示停止;0 不停止。void dSetSpritePosition(設置精靈位置szName: 指向要 設置 位置的cosnt char* szName,精靈的名字const fl

13、oat fPosX,fPosX : X 坐標const float fPosYfPosY : Y 坐標);void dSetSpritePositionX(只設置精靈X 坐標szName: 指向要 設置 位置的const char *szName,精靈的名字const float fPosXfPosX : X 坐標);void dSetSpritePositionY(只設置精靈Y 坐標szName: 指向要 設置 位置的const char *szName,精靈的名字const float fPosYfPosY : Y 坐標);float dGetSpritePositionX(獲取精靈 X

14、坐標。szName:指向要獲得 X 坐標的const char *szName精靈的名字);float dGetSpritePositionY(獲取精靈 Y 坐標szName:指向要獲得 Y 坐標的const char *szName精靈的名字);void dSetSpriteRotation(設置精靈的旋轉角度szName: 指向要 設置 旋轉的const char *szName,精靈的名字const float fRot參數 fRot:旋轉角度,范圍);0-360float dGetSpriteRotation(獲取精靈的旋轉角度szName: 指向要 獲得 旋轉角const char

15、*szName);度的精靈的名字voidSetSpriteLifeTime(設置精靈的生命時szName: 指向要 設置 精靈生const char *szName,長。超過生命時長,命周期的名字const float fLifeTime精靈被刪除。fLifeTime:生命時長,單位);秒Void設置精靈 X 方向常量szName:指向要設置 X 方向常dSetSpriteConstantForceX推力量推力的精靈的名字(fForceX : X方向推力大小const char *szName,const float fForceX);void設置精靈 Y 方向常量szName:指向要設置 Y

16、 方向常dSetSpriteConstantForceY(推力量推力的精靈的名字const char *szName,fForceY : Y方向推力大小const float fForceY);float獲取精靈鏈接點X 坐szName:指向要獲得 X 方向鏈dGetSpriteLinkPointPosX(標接點的精靈的名字const char *szName,參數 iId :鏈接點序號,第const int iId一個鏈接點為 1,后面依次遞);加float獲取精靈鏈接點Y 坐szName:指向要獲得 Y 方向鏈dGetSpriteLinkPointPosY(標。接點的精靈的名字const

17、char *szName,參數 iId :鏈接點序號,第const int iId一個鏈接為1,后面依次遞加);void按角度朝向設置精靈szName: 指向要 設置 瞬間推dSetSpriteImpulseForcePola瞬間推力力的精靈的名字r(fPolar:角度朝向const char *szName,fForce:推力大小const float fPolar,iGravitic:是否計算重力const float fForce,1:計算const int iGravitic0:不計算);floatdGetSpriteMass(獲取精靈質量szName: 指向要 獲得 質量的const

18、 char *szName);返回值 :質量大小精靈的名字播放動態精靈的APIAPIintdAnimateSpritePlayAnimation(const char *szName,const char *szAnim,const intiRestore);功能與返回值動畫精靈播放動畫返回值:是否播放成功1 表示成功,0 表示不成功參數說明szName:指向要播放動畫的精靈的名字szAnim :動畫名字。 注意不是精靈名稱。bRestore:播放完畢后是否恢復當前動畫 1:恢復0:不恢復char szGotGoldName20;設置文字精靈的 API類成員函數功能與返回值void dSetT

19、extValue(文字精靈顯示某個const char *szName,數值int iValue);設置特效精靈的 API參數說明szName:指向文字精靈的名字iValue :要顯示的數值APIvoid dPlayEffect(const char *szSrcName,const float fLifeTime,const float fPosX,const float fPosY ,const float fRotation);設置播放聲音的API功能與返回值播放一個不循環的特效 ,播放完畢之后該特效自動刪除參數說明szSrcName:特效精靈的名字,fLifeTime :特效精靈的生命

20、長度, fPosX :播放的 X 坐標fPosY :播放的 Y 坐標 fRotation :播放的角度朝向APIvoiddPlaySound(const char *szName,const int iLoop,const float fVolume );功能與返回值播放聲音特效參數說明szName:播放聲音的路徑或者名稱iLoop :是播放否循環播放1:循環播放0:不循環播放fVolume : 0-1 音量的大小void dStopSound(停止播放該聲音const int iSoundId);系統相關功能的 APIAPI功能與返回值static float獲取世界邊界之左dGetScre

21、enLeft();邊X坐標static float獲取世界邊界之上dGetScreenTop();邊Y坐標iSoundId :播放聲音的時候返回的聲音的 ID參數說明static floatdGetScreenRight();static floatdGetScreenBottom();static char*dMakeSpriteName(const char *szPrev,const int iId);static voiddSetWindowTitle(const char *szTitle);獲取世界邊界之右邊X坐標獲取世界邊界之下邊Y坐標將前面的字符串與后面的數字整合成一個字符串。返回值:返回一個字符串,比如傳入("xxx",2),則返回"xxx2"設置窗口名字 /標題szPrev:一個非空字符串,最長不能超過 20 個英文字符。iId :一個數字CSystem:MakeSpriteName( “xxx”,2); 得到 xxx2 的字符串szTitle :非空字符串static int dRandomRange( const int iMin,const int iMax);獲取一個位于參數iMin :小于 iMax 的整數1 到參數 2 之間的隨 iMax :大于 iMin 的整數機數返回值: int ,范圍iMi

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論