专栏首页Android小知识NDK启航篇——C语言基础

NDK启航篇——C语言基础

ndk

什么是NDK

  • 简单的说就是原生开发工具集,他的作用是直接与硬件交互,效率较高。

那么为什么要学习NDK呢

  • 现在的美颜特效,以及视频播放,GIF展示,大部分都是用NDK技术来处理的,因为原生的语言对于这些功能处理比JAVA要高效很多。

如何使用NDK

  • C语言以及C++语言基础
  • JNI语法编写

那么让我们开始启航吧!

  • 首先还是从HelloWorld开始
//尖括号代表系统类库,std表示标准,io表示输入输出 引入标准输入输出
#include<stdio.h>
//lib表示类库 引入标准类库
#include<stdlib.h>
main(){
  println("Hello World!");
  system("pause");
}

C语言中数据类型都有哪些

  • short、int、long、char、float、double(c语言中没有boolean类型)
  • 他们所占内存的大小与操作系统有关,并非是固定的,我们可以通过sizeof(类型),来进行查看。

指针

  • C语言中可以用*代表指针,&带表取地址符
//尖括号代表系统类库,std表示标准,io表示输入输出 引入标准输入输出
#include<stdio.h>
//lib表示类库 引入标准类库
#include<stdlib.h>
main(){
  int a = 10;
//取出a的地址,赋值给指针p
  int *p = &a
//#x表示十六进制,取出a的地址
  println("%#x",p);
//取出a地址里存的值
  println("%d",*p);
  system("pause");
}

重点

  • 如上代码中p代表取a的地址,*p代表a地址所存的值 好啦今天先写到这里明天见!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • NDK启航篇——C语言基础(指针)

    如上代码运行你会发现取出来的值为0.00000,原因就是指针的类型不匹配(通过4字节读取8字节的内容)

    longzeqiu
  • NDK启航篇——C语言基础(字符串)

    longzeqiu
  • NDK启航篇——C语言基础(结构体)

    longzeqiu
  • NDK启航篇——C语言基础(联合体)

    longzeqiu
  • NDK启航篇——C语言基础(内存分配)

    longzeqiu
  • NDK启航篇——C语言基础(函数指针)

    这里是彩蛋哦,肯定有人会问这就结束了,指针函数呢? ?,指针函数和函数指针并没有什么关系,非常简单,就是函数的返回值是指针而已,前面已经讲过指针是什么了所以就不...

    longzeqiu
  • NDK启航篇——C语言基础(结构体补充)

    longzeqiu
  • NDK启航篇——C语言终章(文件IO操作)

    longzeqiu
  • Android Studio 4.0 稳定版发布了

    Android Studio 4.0(2020年5月) 更新啦,此版本包含了各种新功能和改进,还有一些废弃配置。

    GSYTech
  • c语言基础

    编写一个循环结构的程序,求数列前20项之和: 2/1,3/2,4/3,5/4,......,20/19,21/20

    潇洒哥和黑大帅
  • C++ 语言基础

    mzlogin
  • android ndk之hello world

    前言:Android NDK r7及以上的版本已经集成了Cygwin编译环境,也就是说,我们完全可以抛弃庞大的Cygwin了。 r6及以下版本,也可以抛弃几个G...

    xiangzhihong
  • Android面试指南:在市场初级开发饱和环境下,如何登上BAT这座山成为巅峰者年薪50W+?

    在我刚加入现在这个团队时,那会儿才毕业大半年,我就在思考这个问题,只不过当时更专注于Android开发领域:Android开发的核心竞争力是什么?我有一个专门的...

    Android技术干货分享
  • C语言基础01--初见C语言

    Ms08067安全实验室
  • C语言自学(一)C语言基础

    auto 声明自动变量 break 跳出当前循环 case 开关语句分支 char 声明字符型变量或函数返回值类型 const 声明只...

    用户7557625
  • Linux下快速构建Android编译环境

    通常,开发苹果系列的软件均需要使用一些专有开发工具,比如xcode,而此工具必须运行在Mac OS X设备上(当然你也可以尝试各种黑苹果的方式),所以不论是对于...

    BGBiao
  • 「学习笔记」C语言(一):基础篇

    这是我大一暑假时系统学习谭浩强第三版《C程序设计》时写下的笔记。也正是因为那一次耗时整整一个星期系统性地学习这本书,才奠定了我现在的编程基础和逻辑...

    悠风
  • Android监听自身卸载,弹出用户反馈调查

    1,情景分析         在上上篇博客中我写了一下NDK开发实践项目,使用开源的LAME库转码MP3,作为前面几篇基础博客的加深理解使用的,但是这样的项目用...

    xiangzhihong
  • android studio2.3如何编译动态库的过程详解

    最近在工作中需要编译android下的动态库,本以为是一件简单的事,没想到因为工具,以及google本身被墙的原因,折腾了好久。

    砸漏

扫码关注云+社区

领取腾讯云代金券