
C
JamesWu9527
一个程序猿小哥
展开
-
linux 下的TCP 和IP demo
自己的一个代码仓库https://github.com/JamesWu9527/linux_c_study.git原创 2020-05-09 12:06:21 · 328 阅读 · 0 评论 -
关于链表的一个小例子
基础版链表的例子回顾下链表的创建 和 遍历/*14点48分链表*/#include <stdio.h>#include <malloc.h>#include <stdlib.h>//定义了一个链表的数据类型struct Node{ int data; struct Node* pNext;};typedef struct ...原创 2020-02-19 16:56:29 · 274 阅读 · 0 评论 -
关于malloc,结构体的小例子
回顾了一下C语言中的malloc用法和结构体相关的知识点/*10点49分测试malloc动态分配一维数组测试动态内存分配的跨函数调用*/#include <stdio.h>#include <malloc.h>#include <stdlib.h>#include <string.h>int test01(){ in...原创 2020-02-19 16:54:44 · 1158 阅读 · 0 评论 -
记录一下C语言基础2
春节期间把 郝斌老师的C语言视频教程又过了一遍,回归最初梦开始的地方:学习的链接:https://www.bilibili.com/video/av8074534直接开始补充些容易忽视的知识点:如果想将一个整数 转换为 一个十六进制数据显示在使用print的时候 格式在X前面添加一个# =》 格式为 #X例如 十进制33 转换为 0x21int value = 33;print...原创 2020-02-19 16:51:35 · 306 阅读 · 0 评论 -
记录下二进制数据的拷贝问题
AA 7F 00 00 04 72 65 65 19 51 5D 5D 61 40 54 5C 67 53 5F 6B 53 70 65 65 54 61 6C 6B 53 70 3C 9F 0D 0A例如有这样一段二进制数据的数据 如果要进行char数组进行数据的备份需要逐个字符去拷贝 因为00在字符串中使用函数strcpy会被截断//strcpy(message.Recvbuffer,...原创 2019-12-20 15:45:49 · 738 阅读 · 0 评论 -
记录一下TCP的客户端的简单拆包过程
场景:从服务端过来的数据很多,产生了粘包现象;现在根据对应的协议来进行拆包思路:Step1:找到帧头,帧尾的位置Step2:从buffer中取出帧数据,放到消息队列中Step3:循环从buffer里面取数据,注意起始位置的变化 goto Step1循环结束的条件:buffer里面的长度 和 最后找到帧尾的数据相同简单的代码实现:(这段只是针对那种多帧粘包的情况,对于缺包,其余的情...原创 2019-12-20 15:34:18 · 619 阅读 · 0 评论 -
一个嵌入式项目的小框架设计思路
功能需求:tcp通信,UDP通信,串口通信, 音频数据的编解码用消息队列作为数据交换的中心,根据push进去的不同类型的消息作出处理伪代码如下main{ Step1 初始化信息 初始化所需要的信息,类似socket 登录 账号等信息 Step2 创建消息队列 创建一个消息队列,定义不同的类型,基本设计方案,根...原创 2019-12-20 15:10:35 · 761 阅读 · 0 评论 -
记录一个strlen函数引发的错误
#include <stdio.h>#include <string.h>#include <windows.h>#include "crc16.h"#include "malloc.h"char* testMalloc(){ char strtemp[6] = {'H','e','l','l','o','\0'}; char *str = ...原创 2019-11-16 11:47:18 · 570 阅读 · 0 评论 -
记录一下C语言的一些基础
1.关键字extern在一个文件中引用另一个文件中定义的变量或者函数2.#ifndef...#define用在头文件中 防止该头文件被重复引用用在文件中 定义固定的变量来执行对应的操作(常用于特定的环境或者调试环境)特殊情况使用3.使用memset malloc 所包含的头文件要使用memset 必须要包含string.h头文件要使用malloc 必须要包含stdli...原创 2019-11-16 11:22:13 · 185 阅读 · 0 评论