- 博客(12)
- 收藏
- 关注
原创 TDA4 mcu1-0的以太网调试
mcu1-0是tda4 mcu域的一个r核,可用于ADAS(Advanced Driver Assistance Systems,高级驾驶辅助系统),汽车网络和通信,多媒体和信息娱乐系统,车载网关和控制单元。ti官方已经提供了基于lwip协议栈的以太网参考程序,在rtos_sdk的pdk_jacinto_08_04_00_21/packages/ti/drv/enet/examples/enet_lwip_example路径,此例程可作为一个独立的app跑到mcu1-0上。
2023-08-03 15:21:34 293
原创 预处理,编译,汇编,链接
目录前言1.预处理:宏替换:头文件展开:条件编译:2.编译:3.汇编:4.链接:前言一个c/c++文件想要变成可执行文件要经过预处理生成预处理文件(.i文件),编译阶段对预处理文件进行编译生成汇编文件(.s文件),汇编阶段对汇编文件进行处理生成目标文件(.o文件),最后链接目标文件生成可执行程序。下面我将介绍在各个阶段对程序进行了哪些处理。1.预处理:c/c++源文件中,以#开头的命令被称为预处理命令,如#include、#define、条件编译命令#if
2021-11-06 21:13:41 1697 1
原创 数据在内存中的存储
前言在介绍数据在内存种存储之前先给大家讲一些小的知识点为下面做铺垫。首先是栈空间的使用习惯是先使用高地址再使用低地址,我下面讲的都是以小段形式存储,在vs的realease版本下对代码进行优化但是无法调试。数据类型的意义就是使用这个数据类型开辟内存空间大小。数据类型char,short,int,long,long long,double,floatchar类型不确定它有无符号,由编译器决定,在内存中以ascii的形式存储。取值范围是-128-127.short,int,long都...
2021-11-05 18:10:30 812
原创 模拟实现字符串函数
目录前言模拟1.strlen 函数2.strcpy 函数3.strcat 函数4.strcmp函数5.strncpy函数6.strncat函数7.strncmp函数8.strstr函数9.strtok函数前言编程过程中经常会使用到一些字符串函数,这些字符串函数都在C语言标准库中,我们可以直接使用。但我们也要了解一下它们是如何实现的。模拟1.strlen 函数strlen函数是用来求字符串长度的。官方给出的解释如图返回值类型...
2021-09-23 20:39:23 254 7
原创 函数栈帧详解
一.什么是函数栈帧1.寄存器:函数栈帧的创建和销毁离不开寄存器,了解函数栈帧之前先了解一下cpu中的寄存器。cpu中供应用程序员使用的寄存器主要有通用寄存器(EAX、EBX、ECX、EDX、ESP、EBP、ESI、EDI),段寄存器(CS、DS、SS、ES、FS、GS),标志和控制寄存器(EIP、EFLAGS)。其中EBP一般用作基址指针,ESP一般用作堆栈指针。2.函数栈帧函数被调用时,系统会在栈区为该函数开辟一块栈空间,这个栈空间就是该函数的函数栈帧。以main函数的调用为例,mai..
2021-08-08 17:49:58 3051
原创 时间复杂度和空间复杂度的计算
目录一.算法效率二.时间复杂度详解1.概念2.大O渐进表示法3.例题三.空间复杂度详解1.概念:2.例题总结一.算法效率算法效率:1,时间效率 2,空间效率。时间效率被称为时间复杂度,而空间效率被称作空间复杂度。 时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量一个算法所需要的额外空间,在计算机发展的早期,计算机的存储容量很小。所以对空间复杂度很是在乎。但是经过计算机行业的迅速发展,计算机的存储容量已经达到了很高的程度。所以我们如今已经不需要再
2021-08-05 17:15:21 203 1
原创 c语言实现扫雷小游戏(类似于单机扫雷)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言 一、 二、使用步骤 1.引入库 2.读入数据 总结前言一.游戏规则介绍扫雷是一个十分经典的游戏,一张棋盘中有很多个不确定是雷还是安全区域的格子,当点击之后若没有雷则会在该区域显示周围八个格子雷的数目,若有雷则游戏结束。今天我就跟大家分享一下如何用c语言实现初阶版扫雷。二.基本流程介绍1.创建一个用户交互菜单2.创建一个mine棋盘用来埋雷并初始化3.创建一个show棋盘用
2021-08-05 14:20:21 552
原创 C语言实现三子棋
先简单介绍一下我的三子棋小游戏是怎么玩的,就是自己跟电脑pk,只不过电脑没这么智能。自己输入想要下的坐标,电脑随机生成一个坐标,直到赢家产生。在这个过程中我觉得比较难的就是赢家的判定部分。在c语言中随机数的产生也就是调用srand()函数利用时间戳来获取随机值。算了游戏太简单,我想你们也都是冲着代码来的,直接上代码。代码和实现为了代码逻辑性更高,没那么繁杂,主要将代码分为三个部分,头文件game.h,和两个c文件,game.c放主程序,body.c放各种函数。1.game.c讲解:游戏开始要
2021-07-28 21:24:21 94
原创 模拟实现strlen函数的三种方法
strlen是用来计算字符串长度的一个库函数,计数方式就是从字符串首地址开始往后计数,遇见'\0'停止。下面我将用三种方法来模拟实现strlen函数。一,第一种定义一个整型变量来计数#include <stdio.h>int my_strlen(char* str) { int count = 0; while (*str != '\0') { count++; str++; } return count;}int main() { char arr[20
2021-07-07 20:21:28 274
原创 指针进阶之函数指针及其他
昨天分享了数组指针和指针数组的定义使用,今天来吧剩下的内容来分享一下,主要包含四部分。1.数组传参和指针传参2.函数指针3.函数指针数组4.指向函数指针数组的指针一.数组传参和指针传参1.对于一维数组看一下下面的几个例子哪个是可行的哪个是不可行的。void test(int arr[]){ ;}void test(int arr[10]){ ;}void test(int*arr);{ ;}void test2(int*arr[20]);
2021-07-03 18:51:50 72
原创 指针数组和数组指针
我们都知道指针可以用来存放地址。这个地址包含很多,比如字符地址&a,数组地址arr,字符串首地址,函数地址,等等。今天主要跟大家分享一下指针数组和数组指针的一些概念和学习心得。 1,字符串首地址是什么鬼char* p="abcde"; 这里就是把字符串“abcde“的首地址”a”的地址存储到指针变量p中,*p指向a。此时的“abcde”为常量字符串是不允许改变的,如果要打印字符串可以直接printf("%s",p);打印字符串可以用字符串数组...
2021-07-02 18:23:15 122
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人