c语言相关
文章平均质量分 91
龚礼鹏
Android应用架构师、AndroidFramework工程师、鸿蒙&openHarmony工程师、flutter开发工程师
展开
-
C语言丨静态库与动态库的区别,你知道多少?
在编程的过程中,使用已经封装好的库函数是十分方便的,也是十分高效的,因此会使用函数库是很重要的。在C语言中,函数库文件分为两种类型,一种是静态库(库程序是直接注入目标程序的,不分彼此,库文件通常以.a结尾),另一种是动态库(库程序是在运行目标程序时(中)加载的,库文件通常以.so结尾),下面我们就探索一下。静态库的链接就是这样的。静态库和动态库的最大区别是,静态库链接的时候把库直接加载到程序中,而动态库链接的时候,它只是保留接口,将动态库与程序代码独立,这样就可以提高代码的可复用度和降低程序的耦合度。转载 2022-09-05 23:01:56 · 2134 阅读 · 0 评论 -
Android FFmpeg入门----编译ffmpeg到集成到Android项目中整个流程
【代码】FFmpeg入门----编译环境配置。原创 2022-08-29 00:18:11 · 2386 阅读 · 6 评论 -
C++的新手入门
C++的奇妙之旅原创 2022-08-11 23:03:03 · 672 阅读 · 0 评论 -
android studio创建NDK项目流程
1.android studio新建NDK项目①.创建新的项目,然后选择最下面的Native C++②.然后一路next,最后点finish③.下面项目就是显示一个字符串,字符串是native底层返回的④.运行结果如下:⑤.build.gradle中cmake相关编译内容,其实真正native层编译还是在cmake中进行的⑥.刚运行的编译so包产物位置2.CMake编译①.编译so包②.cmake相关编译so包讲解注意真...原创 2021-09-01 00:19:54 · 3012 阅读 · 0 评论 -
c语言基础学习一(与java对比不同之处)
1.一个c程序由若干头文件和函数组成2.一个c程序有且只有一个主函数#include<stdio.h> //头文件int main() //主函数{ printf("Hello World"); return 0;}3.C语言中的数据类型最简单常用的整型、实型与字符型数据类型 说明 字节 应用 示例 char 字符型 1 用于存储单个字符 char sex='M'; int 整型原创 2020-06-17 23:46:39 · 549 阅读 · 0 评论 -
android studio 添加ndk工程步骤
1.androidstudiosdk下载插件原创 2020-07-20 22:42:31 · 461 阅读 · 0 评论 -
android 进阶解密 第九章 JNI原理
一.JNI概述。JNI:是java与其他语言通信的桥梁。需要用到JNI技术的地方:1.需要调用java语言不支持的依赖于操作系统平台特性的一些功能。2.为了整合一些以前的非java语言开发的系统。3.为了节省程序的运行时间。必须采用其他语言(比如:c/c++)来提升运行效率。JNI在android中的运用场景:音视频开发、热修复和插件化、逆向开发、系统源码调用等。二.N...原创 2020-07-20 23:09:51 · 539 阅读 · 1 评论 -
C语言基本概述
1.#include指令和头文件include文件提供了一种方便的途径共享许多程序共用的信息。实际上这是一种“拷贝-粘贴”的操作。#include这行代码是一条c预处理器指令。通常,c编译器在编译前会对源代码做一些准备工作,即预处理。#include <stdio.h>通常,在c程序顶部的信息集合被称为头文件。...原创 2020-10-25 21:01:27 · 201 阅读 · 0 评论 -
数据和c
一.C语言基本数据类型1.整型①.整型类别int 十进制打印(%d) 八进制打印(%o) 十六进制打印(%x)short int 类型(或者简写为short),占用空间小,有符号类型long int 类型(或者long),占用空间可能比int多,适用于较大数值的场合。有符号类型。long long int 或 long long(c99标准加入)占用空间可能比long多,适用于更大数据的场合。有符号类型。unsigned int 或 unsigned只用于非负值的场合。这种类型与原创 2020-10-25 22:52:39 · 121 阅读 · 0 评论 -
4.C语言字符串和格式化输入/输出
一.字符串简介1.字符串是一个或多个字符的序列,如下:“Zing went the strings of my heart!"2.存储方式,字符串被存储在char数组中,数组是由连续的存储单元组成,如下所示:注意:中间空格也是需要一个储存单元,末尾的\0是空字符,用来标记字符串的结束。3.字符和字符串区别区别一:‘x’是基本类型,“x”是派生类型(char数组);区别二:“x”是由两个字符‘x’和空字符\0组成,同上。4.strlen()函数和sizeof()函数区别s.原创 2020-10-31 00:35:47 · 181 阅读 · 0 评论 -
c 函数与指针
一.复习函数函数原型是告诉编译器函数的类型,函数调用表明在此处执行,函数定义明确地指定函数要做什么。一般而言函数原型指明了函数的返回值类型和函数接收的参数类型,这些信息称为该函数的签名。函数原型的优点:函数原型能让编译器捕获在使用函数时可能出现的许多错误或者疏漏。二.&运算符指针是c语言最重要的概念之一,用于存储变量的地址。作用:通过传递指针的方式可以改变传递过来的指针相应的值。如果通过值传递则是在函数中生成副本,改变副本的值,原先的值则不会改变。pool是变量名,.原创 2020-11-01 23:47:45 · 244 阅读 · 0 评论 -
10.数组和指针
一.数组数组有数据类型相同的一系列元素组成。一些数组的声明:int main(void){ float candy[365]; //内含365个float类型元素的数组 char code[12]; //内含12个char类型元素的数组 int states[50]; //内含50个int类型元素的数组}方括号([])表明candy,code和states都是数组,方括号中的数字表明数组1的元素个数。1.初始化特性int day原创 2020-11-02 00:51:53 · 333 阅读 · 1 评论 -
12 存储类别、链接和内存管理
一.存储类别从硬件方面来看,被存储的每个值都占用一定的物理内存。1.作用域作用域描述程序中可访问标识符的区域。作用域分为:块作用域,函数作用域,函数原型作用域、文件作用域。2.链接三种链接属性:外部链接、内部链接和无链接。具有块作用域、函数作用域或函数原型作用域的变量都是无链接变量,这意味着这些变量属于定义在它的块、函数或原型内私有。具有文件作用域的可以是外链接或内部链接。外部链接变量可以在多个文件程序中使用,内部链接变量只能在自己定义的文件内部使用。3.存储期存储期原创 2020-11-08 17:06:58 · 305 阅读 · 0 评论 -
11 c语言字符串和字符串函数
一.表示字符串和字符串I/O字符串是以空字符(\0)结尾的char类型数组。注意:如果char类型数组没有以\0结尾则不是一个字符串。1.字符串字面量(字符串常量)用双引号括起来的内容称为字符串字面量,也叫字符串常量。字符串常量属于静态存储类别,这说明如果在函数中使用字符串常量,该字符串只会被存储一次。2.字符串数组和初始化const char * pt1 = "Something is pointing at me.";相当于const char ar1[] = "Some原创 2020-11-08 17:07:25 · 237 阅读 · 0 评论 -
13 文件输入\输出
一.与文件进行通信1.文件是什么文件通常是在磁盘或固态硬盘上的一段已命名的存储区。c把文件看作是一系列连续的字节,每个字节都能被单独读取。2.文本模式和二进制模式所有文本的内容都以二进制(0或1)存储.为了规范文本文件的处理,c提供了两种访问文件的途径:二进制模式和文本模式。在二进制模式中,程序可以访问文件的每个字节。而在文本模式中,程序所见的内容和文本的实际内容不同。程序以文本模式读取文件时,把本地环境表示的行末尾或文件结束映射为c模式。3.I/O的级别底层I/O使用操原创 2020-11-09 19:52:38 · 177 阅读 · 0 评论