一篇手机上编程的教程

合集下载

Android移动应用开发案例教程(慕课版)-课程大纲.docx

Android移动应用开发案例教程(慕课版)-课程大纲.docx

Undroid移动应用开发》课程大纲5. 4. Activity 的传值5. 4. 1. Activity跳转时传递数据5. 4. 2.获得Activity返回的数据5. 4. 3.案例3:个人信息发送与接收APP开发5. 5. Activity的生命周期5. 5.1关于任务和返回栈5.5.2 Activity生命周期的回调方法5. 5.3案例4:体验Activity的生命周期5. 6.案例5:用户注册及登录APP开发5. 7.课程小结5. 8.课后练习5. 9.课堂笔记5. 10.实训记录六、Android 高级组件List View 和RecyclerView 6.1.学习目标6.2.ListView 控件6.2.1.List View 控件介绍6.2.2.ListView控件的使用6.2.3.ListView 常用Adapter6.2.4.案例1:使用List View完成通讯录开发6.3.Base Adapter 适配器6.3.1.BaseAdapter 适配器介绍6.3.2.BaseAdaptcr适配器的使用6.3.3.案例2:使用BaseAdapter升级通讯录6.4.ListView 的常用Listener6.4.1.ListView 的Listener 简介6.4.2.ListView 的Listener 使用6.4.3.案例3:完成通讯录的选中及下拉刷新功能6.5.RecyclerView 控件6.5.1.RecyclerView 控件介绍6.5.2.RecyclerView 控件的使用6.5.3.案例4:使用RecyclerView开发我爱电影6.6.RecyclerView 的Listener6.6.1 .RecyclerView 的单击监听6.6.2.SwipcRcfrcshLayout 刷新控件的使用6.6.3.案例5:完成我爱电影的选中及刷新功能6.7.课程小结6.8.课后练习6.9.课堂笔记6.1().实训记录七、Android 高级控件ViewPager 和Fragment 7.1学习目标7.2 ViewPager控件使用7.2.1ViewPager 介绍7.2.2PagerAdapter 介绍和用法7.2.3案例1: APP启动页的开发7.3 Fragment 使用7.3.1Fragment 介绍7.3.2Fragment的生命周期7.3.3Fragment适配器介绍7.3.4案例2: APP底部导航功能开发7.4案例3:商城导航APP开发7.5课程小结7.5课后练习1.7.课堂笔记1.8.实训记录八、Android的网络编程Volley 和Gson框架8.1学习目标8.2HTTP协议简介8.3Volley框架的使用8.3.1Volley框架的简介8.3.2Android 中使用Volley8.3.3案例1:狗狗图片APP8.4JSON数据解析8.4.1JSON格式数据介绍8.4.2JSON格式数据解析8.4.3案例2:我爱电影APP (网络版)8.5Gson框架的使用8.5.1Gson框架简介8.5.2Gson使用流程8.5.3案例3:使用Gson框架改造我爱电影(网络版)8.6课程小结8.7课后练习8.8.课堂笔记8.9.实训记录九、综合项目:影视分享APP开发9.1学习目标9.2项目需求9. 3 Meterial Design风格界面设计9. 3. 1 Meterial Design 风格9. 3. 2侧滑导航9. 3. 3菜单项切换9.3.4悬浮按钮和底部消息9.4搭建项目图片与数据访问框架9.4.1图片及数据访问框架配置9. 4. 2 JavaBean 设计9.4.3数据访问框架测试9. 5电影列表功能开发9. 5. 1需求描述9. 5. 2 UI布局设计9. 5. 3业务功能实现9. 5.4运行效果。

黑马程序员android开发笔记及源码

黑马程序员android开发笔记及源码

01、什么是3G02、android系统简介03、android背景介绍04、android的framewor简介05、两种虚拟机的比较06、sdk的下载以及简介07、创建android模拟器08、ddms简介09、platform-tools的简介及常见adb指令10、android项目的目录结构11、android下apk安装的过程12、常见的adb指令介绍13、创建模拟器遇到的常见错误14、电话拨号器15、点击事件的四种写法16、短信发送器17、相对布局&单位介绍18、现形布局&布局的组合19、表格布局&绝对布局20、帧布局21、测试相关概念22、android下junit测试框架配置23、logcat简介24、保存文件到手机内存25、android下文件访问的权限26、保存文件到SD卡中27、分析setting源代码获取SD卡大小28、_sharePreference入门29、xml文件的序列化30、采用pull解析xml文件31、采用断电调试的方法观察pull解析的的流程32、android下创建一个sqllite数据库33、sql语句实现数据库的增删改查34、系统api实现数据库的增删改查&Sqlite3工具的使用35、数据库的事物36、listView入门37、采用layoutInflater打气筒创建一个view对象38、采用数据适配器ArryAdapter39、常用数据适配器simpleAdapter40、数据适配器总结41、内容提供者简介42、内容提供者的实现43、短信的备份44、插入一条记录到系统短信应用45、内容观察者46、获取系统的联系人信息47、保存联系人到系统通讯录48、读取联系人的一个小细节49、网络图片查看器50、anr产生的原理&如何避免51、android消息机制入门52、网络html查看器53、字符乱码问题的处理54、采用get方式提交数据到服务器55、采用post方式提交数据到服务器56、提交数据到服务器中文乱码问题的处理57、采用httpclient提交数据到服务器58、异步http框架简介&实现原理59、异步http框架提交数据到服务器60、上传文件到服务器61、smartimageview&常见开源代码62、多线程下载的原理63、多线程断点下载的原理64、多线程java代码移植到android65、多线程下载文本页面的更新66、显示意图激活另一个activity67、隐式意图激活另一个activity68、隐式意图的配置69、隐式意图和显示意图的使用场景70、在不同activity之间数据传递71、activity的声明周期72、activity的启动模式73、activity横竖屏切换的声明周期74、开启新的activity获取他的返回值75、请求码和结果码的作用76、利用广播实现ip拨号77、短信窃听器78、自定义广播时间&发送自定义广播&广播接受者优先级79、采用服务执行长期后台操作80、采用服务窃听电话&服务的声明周期81、android进程优先级&为什么使用服务82、绑定方式开启服务&调用服务的方法83、服务的声明周期(混合开启84、采用aidl绑定远程服务85、代码注册广播接受者&利用广播调用服务的办法86、加载大图片到内存87、获取图片exif信息88、从gallery获取图片89、图片画画板90、扒开美女衣服91、图片的缩放92、图片的旋转93、图片的平移&镜面&倒影效果94、图片的合成95、图片的颜色处理96、多媒体播放api简介97、人脸识别98、mediaplayer的生命周期99、soundpoo简介100、sufaceview的生命周期101、播放在线视频102、视频播放器进度的处理103、调用系统照相机拍照和录像104、采用camera拍照105、常见对话框106、notification入门107、菜单108、android下的样式109、android下的主题110、代码编写ui111、html创建ui112、帧动画113、代码创建创建的tween动画114、xml文件定义动画115、传感器简介116、117、杀死进程118、apk的安装119、应用程序的反编译120、动态创建fragment121、用fragment创建一个选项卡122、fragment的向下兼容性123、fragment的生命周期124、fragment之间的通讯125、应用程序国际化04、android的framewor简介Wap:wait and playWireless Makeup Language(WML)精简的html语言Applications:android自带的基本上层应用Aplication framework:应用程序框架Librarics:Linux lernel:05、两种虚拟机的比较编译后文件格式:jvm:.java->.class->.jardalvik vm:.java->.dex->.odex基于的架构:jvm:基于栈的架构dalvik vm:基于寄存器的架构Cpu直接访问寄存器因此dalvik虚拟机的效率比jvm高06、sdk的下载以及简介->获取sdk工具包(sdk:standard develope kits)->ADT(android develop tools,实际上是eclipse的插件)SDK具体内容Android->SDK Plateform:开发时使用到的jar包->Samples for sdk:->ARM EABI V7a System Image:模拟器运行时的镜像->Intel n86 Aton System:模拟器运行时的镜像->MIPS System Image:模拟器运行时的镜像->google APIs:google提供的jar包,可以直接使用google提供的一些API ->source for android SDK:SDK全部的源代码Extrals:->tools:开发的工具->support library:实现高版本的android向下的兼容->google Admed Ads SDK:gongle提供的广告插件->Analyties App Irackiong SDK:应用的用户分析->cloud message:云消息->gongle play service:收费服务->google USB Driver:真实的设备驱动开发时:基于4.0,兼容2.2、2.3.307、创建android模拟器avd:android virture developerVGA:480*640(电视的标准分辨率)QVGA:240*320(四分之一)HVGA:320*480(一半)WVGA:480*800(width)FWVGA:480*854(更宽)08、ddms简介ddms:模拟器不支持中文,因此发送中文会显示不出来09、platform-tools的简介及常见adb指令Android调试桥:内部实现就是socket让两个系统之间实现数据交互->reset adb:模拟器找不到时候可以重启->adb device:列出所有的连接的设备->adb kill-server:杀死adb调试桥->adb start-server 启动adb调试桥dx.bat:将.class文件打包10、android项目的目录结构一:SDK的目录结构->Samples->Api demo:根据API demo(模拟器上面可以看见)的效果可以在sample中看见相应的代码->Source:jar包所有的sdk源代码都在这个文件夹里->SystemImage:系统镜像->temp:下载更新临时存储的文件夹,一般是空的->tools:emulater.ext 不同版本的模拟器二:New Android Application->theme:留给以后作为扩展,现在并没有太大的作用->target SDK:一般选择高版本,因为高版本对下兼容->mark project as a library:一般不选择,意思是将这个项目提供一个jar包供别人使用三:文件夹目录.setting:设置目录assets:资产目录,存放一些文件,这些文件会被原封不动打包到应用程序的apk中bin:gen:自动生成的目录->builderConfig.java:生成的配置信息->R.java:Android 4.1.2->android.jar开发环境,jar包可以在properties中修改,jar包就是SDK011、Android下apk的安装过程一、Android安装过程分析:->setContentView:甚至view的对象,把里面的xml文件加载到->在project中选择build automaticly会自动把文件生成字节码文件,.class $代表的class文件生成的是内部类->dex.bat文件会把.class文件生成.dex文件->apk压缩文件解压内部内容->META-INF:应用程序的签名eclipse的调试签名文件->res:资源文件->classes.dex:class文件->resources.arsc:资源ID映射->android软件安装的过程:->拷贝xxx.apk带/data/app/xxx-1.apk->在/data/data目录下创建一个文件夹,文件夹名称当前应用程序的报名012、常见adb指令前提:->设备连接上电脑而且驱动安装正常,如果安装不正常的话,会有黄色的问号显示;->设备上打开USB调试;指令:->adb device(如果启动发现这个程序没有安装会自动安装)->adb kill-server->adb start-server->adb uninstall <包名>->adb -s emulator-5554 install c:\\users\\administrator\\hello.apk如果有多个设备的话,如果不指定安装的是哪个设备程序会报错->adb push haha.prop /sdcard/haha.txt 将文件移到(360管家,豌豆荚之类的软件他们也是用的adb指令,倘若电脑上装这些软件的话,会因为两个adb指令抢端口号而挂掉)(adb版本之间兼容不是很好,经常报错可以考虑下版本的问题)->adb shell:远程连接到了android的linux终端ls:显示文件夹ps:显示正在运行的程序ping:网络连通性013、创建模拟器遇到的常见错误->路径最好不要有中文:->应用安装不上,或者安装模拟器的时候开启一个新的模拟器:可能是模拟器的资源被占用,模拟器在运行的时候其实占用着硬盘上面的一个文件,这个文件位于工作空间.android/avd/iphone.avd 里面会有镜像文件,当一个模拟器开启起来了,就给你创建一个文件夹.knock的文件夹,代表着这个模拟器被锁定了,如果把模拟器关掉,就没有程序占据这几个镜像资源了,那么这几个程序就会被自动删除。

Android移动开发基础教程 第2章 Android界面开发

Android移动开发基础教程 第2章 Android界面开发

android:textSize
显示文字的大小
android:textColor
显示文字的颜色
android:gravity
文字在文本框中的位置
android:ellipsize
文字内容超过文本框大小时的显示方式
android:password
是否以点代替显示输入的文字
android:editable
设置当前对话框是否可以被取消
setIcon(Drawable icon)
设置对话框的标题图标
setItems(CharSequence[] items, .OnClickListener listener)
DialogInterface
将对话框的内容设置为列表
setMessage(CharSequence message)
2.4 对话框
自定义对话框
除了创建已有的对话框样式外,AlertDialog.Builder还支持调用serView()方法显示自定义的View。
通过XML布局文件控制Android的界面,可以使界面的设计更加简单清晰,具有更低地耦合性。而且这种方式可以将 视图的逻辑从Java代码中抽离出来,更加符合MVC的设计原则。Android也推荐使用XML的方式设计界面。
Android开发基础知识入门
第2章 Android界面开发
2.2 常用布局
线性布局
2.1 视图组件和视图容器
基本概念
(1)组件或控件:界面的基本元素; (2)视图(View):所有控件的基类; (3)视图容器(ViewGroup):控件的载体;
Android开发基础知识入门
第2章 Android界面开发
2.1 视图组件和视图容器

智能手机软件开发技术——实验指导

智能手机软件开发技术——实验指导

智能手机软件开发技术实验指导书吉林大学珠海学院计算机科学与技术系2012.03目录实验一熟悉Android开发环境 (3)一、实验目的 (3)二、实验内容 (3)三、思考练习 (8)实验二 Hello World程序 (8)一、实验目的 (8)二、实验内容 (8)三、思考练习 (13)实验一熟悉Android开发环境一、实验目的掌握Android开发环境的搭建方法,掌握创建Android项目的方法,掌握Android 模拟器的使用。

二、实验内容1、Android开发环境的搭建这里介绍两种搭建Android开发环境的方法:一种是直接从网上下载SDK安装,一种是复制已经安装好的SDK目录进行配置。

第一种方法有以下步骤:⏹安装JDK 1.6,Eclipse和Android SDK的运行都依赖于JDK;⏹安装Eclipse 3.6,Eclipse是进行Android开发的IDE;⏹安装Android开发插件ADT,这样才可以用Eclipse创建Android工程;⏹安装Android SDK,它是开发Android的工具包;⏹配置SDK目录,如下图;⏹创建模拟器,如下图;⏹设置环境变量,在Path变量中添加JDK bin文件的路径如:C:\ProgrameFiles\java\jdk1.6.0_11\bin,在Path变量中添加SDK tools文件的路径如:D:\Android\android-sdk\tools,在Path变量中添加SDK platform-tools文件的路径如:D:\Android\android-sdk\platform-tools。

第二种方法有以下步骤:⏹安装JDK 1.6,Eclipse和Android SDK的运行都依赖于JDK;⏹对Eclipse安装包进行解压缩;⏹复制别处已经安装成功的Android SDK安装文件夹⏹配置SDK目录;⏹创建模拟器;⏹设置环境变量。

2、创建第一个Android项目创建Android项目的步骤如下:1、在Eclipse中选择“File”>“New”>“Android Project”,在弹出的对话框中进行如下设置:⏹Project name:HelloWorld⏹Build Target:Android 2.1⏹Application name:Hello World⏹Package name:org.example.hello⏹Create Activity:Hello⏹Min SDK Version:72、点击“Finish”完成创建。

2024年度AppInventor编程教程

2024年度AppInventor编程教程
使用“开始录像”和“停止录像”按钮控件,控制摄 像头的录像操作,并将录像保存到指定位置。
2024/3/23
26
位置服务与地图应
07

2024/3/23
27
获取用户地理位置信息
使用App Inventor的位置传感器组件
通过启用位置传感器组件并设置相应的属性,可以获取用户的经纬度坐标信息。
调用移动设备的定位服务
34
THANKS.
2024/3/23
35
查询数据
更新和删除数据
使用SQL语句进行数据查询,sqlite3模块 提供了执行SQL语句并获取查询结果的方法 。
通过SQL语句实现数据的更新和删除操作, 同样可以使用sqlite3模块提供的API来执行 这些操作。
2024/3/23
17文件读写操作教程 Nhomakorabea读取文件内容
通过文件对象的read()、readline()或 readlines()方法,可以读取文件的内容。
获取API密钥
前往所选地图API的官方网站,注册账号并获取API密钥。
2024/3/23
在App Inventor中集成地图组件
使用App Inventor的地图组件,将API密钥和相关参数设置到组件属性中,实现地图的显示功能。
29
路径规划和导航功能开发
调用路径规划API
利用所选地图API提供的路径规划功 能,调用相应的API接口获取起点和
求的功能。
HTTP请求头与响应头
了解常见的HTTP请求头和响应头字 段,如User-Agent、AcceptLanguage、Content-Type等。
接收并处理HTTP响应
解析服务器返回的HTTP响应,提取 所需的数据并进行处理。

Aide教程

Aide教程

Aide教程 - 由整理编写DsautoTim编辑aide是一款可以运行在我们安卓手机或者平板的一款很强大的开发工具。

有着强大的代码补全功能以及布局可视化预览功能,我们可以在我们的手机端来编写我们的代码并且可以直接编译出安卓的可执行apk程序。

而且完全兼容电脑端eclipse项目,同样使用java代码和xml代码来编写我们的安卓程序。

目前最新版为2.02版,请大家自行百度搜索下载。

这里的教程是为那些没有电脑或者不方便使用电脑想在手机端学习编程的人提供。

如果有电脑的同样欢迎在这里学习安卓的软件开发,一起交流,代码是一样的。

由于目前aide中文支持不太好,在中文输入的时候我们可以在代码中为中文单独占一行,以免代码错乱,或者使用键值对文件存储中文,在我们的第15课有介绍。

前10课教程为好个飞飞所写,在这里鸣谢一下好个飞飞。

这里把好个飞飞的教程直接搬运过来了。

从11课开始的教程现在是我在写,如果有什么不对的地方欢迎大家指出,对教程中有什么不懂的问题都可以在此帖进行提出。

1.前言--Android初级教程大家好,前言是每个教程基本都有的东西吧....(这句话是不是很眼熟?没错,Py坛的悠悠鱼教程就是这么写的)时至今天,我依然记得当年在诺基亚手机上写出第一个HellowWorld时的激动心情,随着时间的发展,诺基亚S60手机开始衰落了,安卓并没有好好继承起在Python平台上写程序的愿望,直到国外的牛人推出AIDE,才让我们又重新然起了在手机上开发应用程序的热情。

我怀着很忐忑的心情开始写在手机端进行android开发的教程。

因为它不同以前的PyS60,手机AIDE上新建的android项目和电脑端的eclipse上新的是一样的,AIDE生成的程序和我们在电子商店下载的应用程序是一样的,说到这你是不是有点激动呢?不过,这也意味着,在学习伊始会比学习PyS60要更难一点。

很多机友应该很想提高一下玩机水平,写出个自己的软件。

新手不要再被误导!这是一篇最新的Xposed模块编写教程

新手不要再被误导!这是一篇最新的Xposed模块编写教程

新⼿不要再被误导!这是⼀篇最新的Xposed模块编写教程在互联⽹上,关于Xposed模块编写的教程可谓是⼀抓⼀⼤把。

但由于时间的推移,很多⼯具和⽅法都发⽣了变化(如Eclipse退出安卓编程舞台,AndroidStudio 不断升级导致其⼀些设置也随之变化等)也正因此,⽹上的教程往往有⼀些时限性,⽐如现如今 provide 这个关键字已经被舍弃了却仍有⼈在⽤,还有些说要把jar包放到lib⽂件夹⽽⾮libs⽂件夹……种种错误或者落伍的教程对新⼿产⽣了很⼤的误导。

笔者近⽇收到过朋友初学Xposed模块编写时的求助,看了⼀些他找的参考教程,觉得多多少少都存在点问题,因此萌⽣了写⼀篇关于在最新AndriodStudio 开发环境下实现Xposed模块开发⼊门的⽂章。

0×01 Xposed 模块编写简介Xposed 框架的原理就不多说了,它部署在ROOT后的安卓⼿机上,通过替换/system/bin/app_process程序控制zygote进程,使得app_process在启动过程中会加载XposedBridge.jar这个jar包,从⽽完成对Zygote进程及其创建的Dalvik虚拟机的劫持。

可以让我们在不修改APK源码的情况下,通过⾃⼰编写的模块来影响程序运⾏的框架服务,实现类似于⾃动抢红包、微信消息⾃动回复等功能。

其实,从本质上来讲,Xposed 模块也是⼀个 Android 程序。

但与普通程序不同的是,想要让写出的Android程序成为⼀个Xposed 模块,要额外多完成以下四个硬性任务:1、让⼿机上的xposed框架知道我们安装的这个程序是个xposed模块。

2、模块⾥要包含有xposed的API的jar包,以实现下⼀步的hook操作。

3、这个模块⾥⾯要有对⽬标程序进⾏hook操作的⽅法。

4、要让⼿机上的xposed框架知道,我们编写的xposed模块中,哪⼀个⽅法是实现hook操作的。

手机编程软件使用教程

手机编程软件使用教程

手机编程软件使用教程1.先看看是什么程序,名字叫C4droid 如下图,那些图片都是从我自己的手机上截下来的。

2.打开它进入主界面,虽然全是英文的,但单词都简单,我在这弱弱的汉化了一下。

如图就在那空白的地方敲代码,因为是全触屏的,代码敲起来有点蛋疼。

尤其是符号,但为了学习,吃点苦没什么啦!好,接着下一步。

3.这是我已经敲完的代码,以从“1~100内输出所有的素数.c”为例,如图代码敲好以后,点击Compiled,也就是编译,如果出现Successfully compile 如图那样的则代表编译成功了,在这为了演示出错是什么样的情况,我故意少打个“;” 结果出错,出错结果如下图。

我们来分析分析这段报错信息,/data/data/com.n0n3m4.droidc/files/temp.c:13:error:';'expected(got"}") 好了,这段信息我们可以看出出错是在13行,那里的13就表示是13行,你可以从上往下数13行,就可以看到了,它的意思是在13行出错,原因是在 } 前少了;号。

根据这个提示改一下就行了。

完成以后就和上面那图一样了。

继续下一步。

4.说了那么多的废话,下面看看运行是个什么情况。

如下图。

嗯。

运行还是很正常的,和我们想象的一样。

但有的人会反映说他屏幕上的字为什么那么小。

也确实,默认情况下那个字体很小,看着难受,设置一下就没问题了。

继续下一步。

5.如图,下图就是运行界面的设置菜单我们点设置,就会设置菜单选项。

如下图选Font size 便就是设置屏幕字体大小了,再继续如下图。

我选的是16 pt 就我上面的那个大小,看起来还挺适合的。

好了,教程就到这里结束了,废话了这么多。

呵呵,谢谢你很有耐心的把它看完。

希望你在学C的道路上也能坚持走下去。

希望没有电脑的爪机党能再接再厉啦!。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

手机党有福了。

今天来介绍一款手机上编程的软件,前提是安卓的。

其他的就可以不用看了。

1.先看看是什么程序,名字叫C4droid 如下图,那些图片都是从我自己的手机上截下来的。

2.打开它进入主界面,虽然全是英文的,但单词都简单,我在这弱弱的汉化了一下。

如图
就在那空白的地方敲代码,因为是全触屏的,代码敲起来有点蛋疼。

尤其是符号,但为了学习,吃点苦没什么啦!好,接着下一步。

3.这是我已经敲完的代码,以从“1~100内输出所有的素数.c”为例,如图
代码敲好以后,点击Compiled,也就是编译,如果出现Successfully compile 如图那样的则代表编译成功了,在这为了演示出错是什么样的情况,我故意少打个“;” 结果出错,出错结果如下图。

我们来分析分析这段报错信息,
/data/data/com.n0n3m4.droidc/files/temp.c:13:error:';'expected(got"}") 好了,这段信息我们可以看出出错是在13行,那里的13就表示是13行,你可以从上往下数13行,就可以看到了,它的意思是在13行出错,原因是在 } 前少了;号。

根据这个提示改一下就行了。

完成以后就和上面那图一样了。

继续下一步。

4.说了那么多的废话,下面看看运行是个什么情况。

如下图。

嗯。

运行还是很正常的,和我们想象的一样。

但有的人会反映说他屏幕上的字为什么那么小。

也确实,默认情况下那个字体很小,看着难受,设置一下就没问题了。

继续下一步。

5.如图,下图就是运行界面的设置菜单
我们点设置,就会设置菜单选项。

如下图
选Font size 便就是设置屏幕字体大小了,再继续如下图。

我选的是16 pt 就我上面的那个大小,看起来还挺适合的。

好了,教程就到这里结束了,废话了这么多。

呵呵,谢谢你很有耐心的把它看完。

希望你在学C的道路上也能坚持走下去。

希望没有电脑的爪机党能再接再厉啦!。

相关文档
最新文档