當前位置:首頁 » 編程語言 » c語言寫安卓軟體
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言寫安卓軟體

發布時間: 2023-07-09 06:19:32

c語言能做APP嗎

可以。

C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、僅產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

C語言描述問題比匯編語言迅速、工作量小、可讀性好、易於調試、修改和移植,而代碼質量與匯編語言相當。C語言一般只比匯編語言代碼生成的目標程序效率低10%~20%。

因此,C語言可以編寫系統軟體。

(1)c語言寫安卓軟體擴展閱讀

C語言編寫系統軟體注意事項:

1、變數賦值時候不能連寫成:int a=b=c=5或者int a,b,c=5都存在語法錯誤!但是可以寫成int a=5,b=5,c=5;或者寫成:int a,b,c;a=b=c=5;也是合法的。

*%d表示輸出的結果為整型數,全部為整數的運算;%f表示輸出結果為實數型數,過程中必須有實數型數參與運算。

2、數據的輸入、輸出都是以計算機為主題而言的,並且數據的輸入和輸出都是由內部庫函數完成的,因此都是函數語句。

*stdio.h做頭文件,表示的是包含標準的輸入輸出函數。

*表達式語句:【表達式;】計算表達式的值。

*函數調用語句:【函數名(實際參數);】調用函數體並把實際參數賦給函數定義中的形式參數,然後執行被調用函數中的語句,求取函數值。

② 如何用c++寫安卓手機軟體

用c++寫安卓手機軟體的方法:

安裝ndk,使用純c++開發安卓程序,下邊是詳細的步驟與說明:

1、編寫入口函數

android_main為入口函數,和C++中的main函數是一樣的。這里創建CELLAndroidApp的對象,直接調用main函數。

voidandroid_main(structandroid_app*state)

{

CELLAndroidAppapp(state);

app.main(0,0);

}

2.繪制類的實現說明

protected:

EGLConfig_config;

EGLSurface_surface;

EGLContext_context;

EGLDisplay_display;

android_app*_app;

int_width;

int_height;

部分參數說明:

_surface:用於繪制圖形,相當於windows繪圖中的點陣圖

_context:可以看做是opengl對象

_display:用於繪圖的設備上下文,類似於windows繪圖中的dc

3.構造函數說明

CELLAndroidApp(android_app*app):_app(app) { _surface=0; _context=0; _display=0; _width=64; _height=48; app->userData=this;//用戶數據 app->onAppCmd=handle_cmd;//窗口的創建銷毀等 app->onInputEvent=handle_input;//回調函數 }

值得注意的是,這里的app中的userData,傳入用戶數據,這里直接傳入this,onAppCmd傳入的handle_cmd回調函數,onInputEvent傳入的事handle_input回調函數

4.類中函數main()說明

virtualvoidmain(intargc,char**argv)

{

intident;

intevents;

android_poll_source*source;

while(true)

{

while((ident=ALooper_pollAll(0,NULL,&events,(void**)&source))>=0)

{

if(source!=NULL)

source->process(_app,source);//有觸摸事件,調用input函數,相當於dispatchmessage

if(_app->destroyRequested!=0)

return;

}

render();

}

}

5.調用render()函數,繪制圖形。

6.初始化設備函數initDevice()

virtualvoidinitDevice()

{

constEGLintattribs[]=

{

EGL_SURFACE_TYPE,EGL_WINDOW_BIT,

EGL_BLUE_SIZE,8,

EGL_GREEN_SIZE,8,

EGL_RED_SIZE,8,

EGL_NONE

};

EGLintformat;

EGLintnumConfigs;

_display=eglGetDisplay(EGL_DEFAULT_DISPLAY);

eglInitialize(_display,0,0);

eglChooseConfig(_display,attribs,&_config,1,&numConfigs);

eglGetConfigAttrib(_display,_config,EGL_NATIVE_VISUAL_ID,&format);

ANativeWindow_setBuffersGeometry(_app->window,0,0,format);

_surface=eglCreateWindowSurface(_display,_config,_app->window,NULL);

#if0

EGLintcontextAtt[]={EGL_CONTEXT_CLIENT_VERSION,2,EGL_NONE,EGL_NONE};

_context=eglCreateContext(_display,_config,0,contextAtt);

#else

_context=eglCreateContext(_display,_config,0,0);

#endif

if(eglMakeCurrent(_display,_surface,_surface,_context)==EGL_FALSE)

{

LOGW("UnabletoeglMakeCurrent");

return;

}

eglQuerySurface(_display,_surface,EGL_WIDTH,&_width);

eglQuerySurface(_display,_surface,EGL_HEIGHT,&_height);

onCreate();

//InitializeGLstate.

glHint(GL_PERSPECTIVE_CORRECTION_HINT,GL_FASTEST);

glEnable(GL_CULL_FACE);

glShadeModel(GL_SMOOTH);

glDisable(GL_DEPTH_TEST);

glViewport(0,0,_width,_height);

glOrthof(0,_width,_height,0,-100,100);

7.繪制函數render()

virtualvoidrender()

{

if(_display==0)

{

return;

}

glClearColor(0,0,0,1);

glClear(GL_COLOR_BUFFER_BIT);

glEnableClientState(GL_VERTEX_ARRAY);

if(g_arVertex.size()>=2)

{

glColor4f(1,1,1,1);

glVertexPointer(3,GL_FLOAT,0,&g_arVertex[0]);

glDrawArrays(GL_LINE_STRIP,0,g_arVertex.size());

}

eglSwapBuffers(_display,_surface);//雙緩存的交換緩沖區

}

8.編譯程序,將程序導入到模擬器中,最終運行的效果圖如下:

③ 用c語言編的應用程序能在安卓手機上運行嗎

用c語言編的應用程序能在安卓手機上運行嗎

C語言編寫的程序不能直接在android上運行,androidjni通過類似dll的so方式應用C/C++代碼,就是androidnative的開發(NDK)

VB生成的應用程序能在手機上運行嗎

不能的。
windows的自動運行跟Mac的自動運行肯定不是一個道理,那張光碟只不過兼顧了兩個系統的自動運行方式專門做了設置。而且,這個跟問題沒有什麼關系。
Windows下VB編譯好的程序絕對不可能直接運行在mac os下。

windows 應用程序能在 windows 10 mobile上運行嗎

普通桌面應用就是指我們傳統的WINDOWS應用程序 應用商店下載的為Metro應用程序,一般可以全屏操作的。 一般辦公電腦習慣是用傳統的普通桌面應用 平板、手機等是使用應用商店下載的應用程序 可以這樣理解的

請問,用C#編的.exe的應用程序能夠在所有Windows系統上運行嗎?

目標機器上必須安裝相應版本的. framework runtime,其實和JAVA虛擬機一樣,C#編譯的exe最終都被編譯成中間語言,需要在滲姿相應的運行時框架下才能運行

c語言怎麼關閉正在運行的應用程序

可以通過system 函數,調用核基dos命令taskkill實現關閉正在運行的應用程序。

system("taskkill /im notepad.exe");
會關閉記事本應用。
system("taskkill F /pid 1234 T");
會強制結束pid為1234的進程及其子進程。
關於taskkill的詳細描述如下:
TASKKILL [/S system [/U username [/P [password]]]] { [/FI filter] [/PID processid | /IM imagename] } [/F] [/T]
參數列表:
/S system 指定要連接到的遠程系統。
/U [domain]user 指定應該在哪個用戶上下文
執行這個命令。
/P [password] 為提供的用戶上下文指定密碼。如果忽略,提示輸入。
/F 指定要強行終止的進程。
/FI filter 指定篩選進或篩選出查詢的的任務。
/PID process id 指定要終止的進程的PID。
/IM image name 指定要終止的進程的圖像名。通配符 '*'可用來指定所有圖像名。
/T Tree kill: 終止指定的進程和任何由此啟動的子進程。
/? 顯示幫助/用法。
篩選器:
篩選器名 有效運算符 有效值
----------- --------------- --------------
STATUS eq, ne 運行 | 沒有響應
IMAGENAME eq, ne 圖像名
PID eq, ne, gt, lt, ge, le PID 值
SESSION eq, ne, gt, lt, ge, le 會話編號
CPUTIME eq, ne, gt, lt, ge, le CPU 時間,格式為
hh:mm:ss。
hh - 時,
mm - 鍾,ss - 秒改喊謹
MEMUSAGE eq, ne, gt, lt, ge, le 內存使用,單位為 KB
USERNAME eq, ne 用戶名,格式為
[domain]user
MODULES eq, ne DLL 名
SERVICES eq, ne 服務名
WINDOWTITLE eq, ne 窗口標題
注意: 只有帶有篩選器的情況下,才能跟 /IM 切換使用通配符 '*'。
注意: 遠程進程總是要強行終止,
不管是否指定了 /F 選項。

用java編寫的程序能在安卓機上運行么

當然可以,不過如果涉及到線程的時候,得按照安卓對應的版本來進行選擇性的移植程序
假如你使用了開發框架的話,那麼在安卓上面可能會遇到一些小問題!調試一下應該就可以通過的

我想學編寫安卓手機的應用程序,請問我需要學哪些語言?c?java?

安卓是以JAVA語言為基礎的啊。當然是看java了!好多安卓程序員原來都是學JAVA的,然後安卓被谷歌開發以後才轉過來的!

如何讓MFC編寫的應用程序能在別的電腦上運行

把應用程序做成Release版的應用程序,具體步驟如下:
菜單Build->SetActiveConfigure,在彈出對話框中選擇Win32Release,點OK,然後
菜單project->setting ,在彈出對話框的General屬性頁的Microsoft Foundation classes
下拉列表中選擇User MFC in static Library,然後rebuildall,把生成的Release目錄下
的可執行文件拷貝到另一台機器上即可

靜態編譯 release編譯 用depend.exe看看依賴那些dll文件一並過去

在安卓系統上運行應用程序此需打開另一個應用程序這時正在運行的應用程序為什麼會意外崩潰?

系統的兼容性 與游戲不太符合 又或許是運行內存太小了 運行內存是512 還是1G或2G 記住是RAM不是ROM哦