❶ c语言 编写的程序怎么移植到手机上
android系统?还是ios?
android开发是用的java,如果想使用c,有两种方式,一种将c语言编译成.so文件,在android程序中加载,或者可以使用JNI直接调用c函数。
❷ 标准C程序如何移植到android平台需要什么编译参数,我用的是arm-eabi-gcc工具链
首先 你编译的程序 用cat命令看 目录应该是/lib/libc.so.6 而Android 是 /system/lib/libc.so
本来已经有C库了 但是 我这里没有用~ 你可以在 你的PC安装机子上找到 交叉编译arm-eabi-gcc或 arm-linux-gcc安装目录下的arm/4.3.2/..../libc/lib/libc2.8.so好像 是这个 有一个是libc.so.6 这个是一个连接 不是文件 查看属性 看下连接的文件应该是 那个libc2.8.so (放心它是arm版的)拷贝这个文件到 安卓/system/lib/去 然后
用RE文件 为它添加一个 连接 /system/lib/libc.so.6 就可以了
这样 标准库是被移植去了 但是 你的应用程序 有可能使用的是 /lib/libc.so.6 不是 /system/lib/libc.so.6
先测试不行的话 就把 /system/lib 连接为/lib
❸ 自己用C语言编了个程序能放入安卓手机使用么
两种方法:
1.
JNI。在安卓上层通过JNI调用底层c的程序。
2.
把c语言改成JAVA。
你的程序是不能直接放在手机里面运行的,不过你可以把你的c文件放到手机里,用C4droid这个安卓程序运行。
❹ 如何用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语言程序(最好留下下载地址)
如果是安卓手机,可以用c4droid这个软件,下载地址:
http://www.coolapk.com/apk/com.n0n3m4.droidc
❻ 有没有手机可以运行的编程c语言的软件
C4droid是款Android设备上的C/C++程序编译器[2]
,默认以tcc(tiny
c
compiler)为编译器,可以选择安装gcc插件(20mb,只有root用户可以使用),选用gcc后,可以用sdl(简单直控媒体层库,需安装sdl
plugin
for
c4droid)和qt(nokia官方开发库,需安装sdl
plugin
for
c4droid)。也可以开发native
android
app(需安装sdl
plugin
for
c4droid),就像google
ndk一样。软件支持代码高亮,编译时间随cpu主频而定,主频越高编译越快。gcc插件版本4.7.2提供了示列程序,包含sdl,android
native,qt和命令行测试程序源码。
❼ 有没有安卓手机c语言编译软件
安卓手机c语言编译软件是有的,c4droid就是比较常用的。
c4droid是款Android设备上的C/C++程序编译器,默认以tcc(tiny c compiler)为编译器,可以选择安装gcc插件(20mb,只有root用户可以使用),选用gcc后,可以用sdl(简单直控媒体层库,需安装sdl plugin for c4droid)和qt(nokia官方开发库,需安装sdl plugin for c4droid)。也可以开发native android app(需安装sdl plugin for c4droid),就像google ndk一样。软件支持代码高亮,编译时间随cpu主频而定,主频越高编译越快。gcc插件版本4.7.2提供了示列程序,包含sdl,android native,qt和命令行测试程序源码。
❽ 安卓手机上可以用的编程软件c语言的系统有哪些
C4droid
C4droid是一个C / C + + IDE + C / C + +编译器,GNU Makefile文件,SDL和Qt支持的Android。 C4droid支持ARM处理器(而不是设备与英特尔的x86和MIPS处理器)的设备。
您
可以创建自己的应用程序在Android手机中,运行(即使没有上网:编译器为离线状态)和出口的可执行文件(为终端的应用程序)或APK(GUI使用的
应用程序)。此应用程序使用TCC和uClibc(GCC仿生libc的一个插件),所以它有完整的ANSI C和ISO C99支持。
C4droid可用于教育目的或在C和C + +语言的练习。
C4droid支持语法高亮,代码完成和源代码格式,所以它是一个非常方便的工具,在旅途中进行编程。
❾ 我是刚刚学习c语言,用什么软件好,可以安装在手机上的
是什么系统的手机?
安卓的可以直接安装 C4Android。
苹果的可以先越狱,再装控制台,再装GCC。
❿ 怎样把自己写的c语言游戏代码做成安卓手机软件啊就像自己在应用市场下载的游戏软件一样玩
你想做Android的软件,是要用Java语言开发的,推荐你看两本书看完你就可以写Android的程序了。《疯狂Android讲义·李刚》《疯狂Java讲义·李刚》