![](https://img-blog.csdnimg.cn/20190927151117521.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C
C的学习
路和远方
这个作者很懒,什么都没留下…
展开
-
GCC编译流程
汇编就是把编译阶段生成的.s文件转变成二进制目标代码,也就是机器代码。链接就是将目标文件以及所需要的库文件链接生成可执行目标文件的过程。原创 2022-10-21 17:32:23 · 246 阅读 · 0 评论 -
C语言之面向接口编程
C语言之面向接口编程创建接口头文件// hello_socket.h#include "string.h"#include "stdio.h"#include "stdlib.h"typedef void (* initHandle)(void ** handle);typedef void (* sendMessage)(void * handle,char * message,int length);typedef void (* receiveMessage)(void *原创 2021-12-10 11:10:52 · 488 阅读 · 0 评论 -
JNI之logcat日志
在Logcat中可以看到JNI中的C++打印的日志1.导入lib#include <android/log.h>2.定义函数// 定义tag#define LOG_TAG "C_TAG"// 定义日志等级#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__)#define...原创 2020-04-07 13:34:29 · 453 阅读 · 0 评论 -
Cmake语法
Cmake语法变量# 语法# 注释#[[ 多行注释 hello worldc and c++ ]]# 设置变量set(变量名 变量值)# 移除变量unset(变量名)# 打印message(字符串)#字符串引用变量"${变量名}"# 列表set(列表名 数值1 数值2 数值3 ...)# 或者set(列表名 "数值1;数值2;数值3;...")案...原创 2019-12-27 18:47:42 · 161 阅读 · 0 评论 -
文件的读写
文件的读写打开文件 FILE *__cdecl fopen(const char * __restrict__ _Filename,const char * __restrict__ _Mode) __MINGW_ATTRIB_DEPRECATED_SEC_WARN; // _Filename 文件路径 // _Mode 读写模式,具体如下字符串说明r以只读...原创 2019-11-20 15:45:24 · 239 阅读 · 0 评论 -
结构体,共同体,枚举
结构体概念及定义概念结构体是一种构造类型的数据结构。是一种或者多种基本类型或者构造类型的数据集合。定义(三种定义方法)// 结构体 定义方法一struct person{ char name[10]; int age;};// 结构体 定义方法二typedef struct{ char name[10]; int age;} PERS...原创 2019-11-18 16:29:59 · 215 阅读 · 0 评论 -
字符串处理函数
字符串处理函数测量字符串的长度size_t __cdecl strlen(const char *_Str);// 测量字符指针 _Str 指向的字符串中字符的个数,不包括‘\0’例如: char * str1 = "hello"; char str2 [20] = "hello"; printf("sizeof 1 = %d \n",sizeof(str1))...原创 2019-11-08 17:43:47 · 495 阅读 · 0 评论 -
指针
指针概念存储器:存储数据器件。外存:外部存储器,长期存放数据,掉电不会丢失。如:硬盘、U盘、光盘等内存:内部存储器,暂时存放数据,掉电后会丢失。如:ram、DDR物理内存:实实在在存在的存储设备。虚拟内存:操作系统虚拟出来的内存。定义分类指针和变量的关系指针和数组元素之间的关系指针数组指针的指针字符串和指针...原创 2019-11-05 16:13:54 · 122 阅读 · 1 评论 -
动态库,静态库
动态库,静态库// 动态编译使用的是动态库文件进行编译gcc hello.c -o hello // 默认动态编译// 静态编译使用的是静态库文件进行编译gcc -static hello.c -o hello// 动态编译和静态编译的区别// 1.使用的库文件格式不一样// 2.静态编译要把静态库文件打包编译到可执行程序中;动态编译不把动态库文件编译打包到可执行文件中,只是编译链...原创 2019-10-25 18:30:48 · 100 阅读 · 0 评论 -
预处理
预处理,动态库,静态库includeinclude<> 用尖括号包含头文件, 在系统指定的路径下找头文件。include"" 用双引号包含头文件,在当前目录下找头文件,如果找不到,则去系统指定的目录下找。define定义宏用define去定义宏是在预编译的时候进行替换。...原创 2019-10-25 15:28:20 · 120 阅读 · 0 评论 -
函数
函数定义**函数:**函数是C语言里面的功能单位,实现一个功能可以封装一个函数来实现。返回值类型 函数名(形参 // 可以没有){ 函数体 return 返回的数据 // 可以没有}声明对已经定义的函数进行说明,函数的声明可以声明多次。为什么要声明?有些情况,如果不对函数进行声明,编译器在编译的时候,则不认识这个函数。因为编译器在编译c程序的时候是从上往下进行编译的。什么...原创 2019-10-24 16:15:56 · 374 阅读 · 1 评论 -
数组及排序案例
数组数组:若干个相同类型的变量在内存中有序的存储的集合。初始化#include <stdio.h>#include <stdlib.h>int main(){ // 定义一个可以存储10个数据的整数型数组,没有赋值的位置用0补充 int nums[5] = {1,2,}; printf("%d \n", sizeof(nums)); ...原创 2019-10-24 11:29:16 · 205 阅读 · 1 评论 -
C语言格式化输出printf
C语言格式化输出printf#include <stdio.h>#include <stdlib.h>int main(){ // 基本用法: int a = -5; printf("a = %d \n",a); // 有符号整数 // -5 printf("a = %u \n",a); // 无符号整数 // 10...原创 2019-10-23 14:55:37 · 298 阅读 · 0 评论 -
C语言关键字
C语言关键字数据类型相关用于定义变量或者类型char :声明字符型变量或函数返回值类型short :声明短整型变量或函数int: 声明整型变量或函数long :声明长整型变量或函数返回值类型float:声明浮点型变量或函数返回值类型double :声明双精度浮点型变量或函数返回值类型struct:声明结构体类型union:声明共用体类型enum :声明枚举类型signed...原创 2019-10-23 11:44:36 · 98 阅读 · 0 评论 -
C环境安装
C环境安装安装下载和安装 Clang下载地址:http://releases.llvm.org/download.html选择 Pre-Built Binaries: Windows (64-bit) (.sig)安装,默认安装路径 C:\Program Files\LLVM下载和安装 MinGW下载地址:https://sourceforge.net/projects/mingw...原创 2019-10-22 18:21:37 · 1241 阅读 · 0 评论