日记
文章平均质量分 71
晩风与她
这个作者很懒,什么都没留下…
展开
-
外部输入两个字符串,用C语言编写实现my_strlen,my_strcpy,my_strncpy,my_strchr,my_strstr函数的功能
#include <stdio.h>#include <string.h>// 功能:计算字符串s的长度、返回s的长度,不包括结束符NULL。void my_strlen(char *str){ int lenth = 0; while (*str++) { lenth++; } printf("lenth:\t%d\n",lenth); }/*比较字符串s1和s2;(1)当s1&l原创 2020-08-04 15:10:06 · 417 阅读 · 0 评论 -
DATE 18
#include<stdio.h>#include<string.h>#define N 100 //宏定义Nchar head_tail(char *str,char *out) //调用函数head_tail{ int i = 0; //定义循环变量并初始化 while(*...原创 2018-05-31 23:03:20 · 427 阅读 · 0 评论 -
链式栈、链式队列、顺序队列
暑期学习第一天,学习了链式栈、链式队列和顺序队列这三种都是举一反三的类型链式栈头文件#ifndef _STACK_H_#define _STACK_H_#define OK 0#define ERROR 1// 结点typedef struct _stackNode{ int data; struct _stackNode *next;}...原创 2018-07-17 22:03:29 · 319 阅读 · 0 评论 -
写自己的my_atoi()函数.
#include <stdio.h>int my_atoi(char *str){ int flag = 1; int ret = 0; while (*str==' ') //跳过空格 { str++; } if (*str == '\0') ...原创 2019-07-09 22:43:17 · 328 阅读 · 0 评论 -
开始复习链表,今天写了两个函数,一个创建节点,一个遍历节点
#include <stdio.h>#include <malloc.h>#include <stdlib.h>typedef struct node{ int data; struct node *pNext; }Node;Node *create_list(){ int i; int num; ...原创 2019-07-14 22:37:34 · 215 阅读 · 0 评论 -
深拷贝(自己写拷贝构造函数),浅拷贝(默认的拷贝构造函数)
#include <iostream>#include <string>using namespace std;class student{private: char *m_name; int m_age;public: //构造函数(如果不写构造函数,系统会调用默认构造函数) stud...原创 2019-07-10 19:11:31 · 887 阅读 · 1 评论 -
字符串逆序的深入,例句"i am from shanghai"改为"shanghai from am i"
//这个程序首先是将整个字符串进行逆序,再根据空格进行分别逆序。#include <stdio.h>#include<string.h>int main(){ char str[100] = "i am from shanghai"; // 数组长度、字符串长度 是不一样的 // 求字符串长度 int len = 0;...原创 2019-07-11 09:10:24 · 294 阅读 · 0 评论 -
C++面向对象笔记
::域解析符号1、命名空间2、类的函数的定义(体外定义) 返回值 类名::函数名(参数列表)"stdio.h" :当前环境进行寻找<stdio.h> :系统环境进行寻找<iostream.h> : 旧的头文件,非标准输入输出流,可以直接使用cin,cout<iostream> : 新的头文件,标准输入输出流,不可以直接...原创 2019-07-11 10:37:23 · 209 阅读 · 0 评论 -
链表的一些基本操作,头插尾插,创建,删除,逆序,排序等等
#include <stdio.h>#include <string.h>#include <stdlib.h>typedef struct node{ int data; struct node *pNext;}Node;Node *create_list(){ Node *phead = (Node *)malloc...原创 2019-07-24 10:44:48 · 237 阅读 · 0 评论 -
QT中TCP传递结构体,
看了网上很多大神,有认识重载运算符把结构体中的内容一个一个进行传递的,比较麻烦,也有说的比较轻松的,完全不适合我这种小白看,完全不知所以。最后终于找到了解决的方法。下面是我学习到的的方法:在客户端头文件中定义一个结构体:typedef struct node{ char count[20]; char passwd[20]; char cmd[5]; ...原创 2019-08-03 22:48:53 · 2094 阅读 · 0 评论 -
STM32_0810
STM321、st :意法半导体,即SOC厂商2、M :微控制器,注意不是微处理器3、32bit : 每次处理数据的长度是32位,32位的微控制器4、CPU的位数是指每次处理的操作数的位数5、char-- 8bit6、short-- 16bit7、int-- 32bit8、sizeof(char*) = 4 //指针都为4通信总线:1、I2C :最基础的板内连接总线,2根...原创 2019-08-10 21:22:17 · 192 阅读 · 0 评论 -
STM32_2
GPIO端口模式寄存器GPIOx_BSRR寄存器:实现对 GPIO_ODR寄存器进行原子读取/修改访问。上下拉电阻作用:1、固定未使用的引脚的电平2、增强驱动,不会出现供电不足的状态GPIO_BSRR:置位/复位寄存器BS:bit setODR写1置位BR:bit resetODR写1复位LED初始化set PC output上拉下拉 频率BSR...原创 2019-08-11 18:44:37 · 224 阅读 · 0 评论 -
链表的一些基本操作,头插尾插,创建,删除,逆序,排序等等
#include <stdio.h>#include <string.h>#include <stdlib.h>typedef struct node{ int data; struct node *pNext;}Node;Node *create_list(){ Node *phead = (Node *)malloc...原创 2019-08-11 18:46:38 · 211 阅读 · 0 评论 -
C++中的覆盖和隐藏
覆盖:子类覆盖父类函数覆盖的特征是:分别位于子类和父类中函数名字和参数都相同父类的函数是虚函数 virtual隐藏:子类隐藏了父类函数隐藏的特征是:子类的函数与父类的函数名字相同,但是参数不同,父类函数被隐藏子类的函数与父类的函数名字相同,参数也相同,但是父类没有 virtual,父类被隐藏总结IF (子类函数与父类的函数名字相同,但是参数不同) 父类函数被隐藏;...原创 2019-08-30 13:31:59 · 656 阅读 · 0 评论 -
从终端输入一个字符串,然后删除字符串中出现次数最少的字符
#include<stdio.h>#include<string.h>#define N 100del_min(char *str,int *len_str) //调用函数有两个形参,一个char类型,一个int类型{ int i = 0; int j = 0; int k = 0; ...原创 2018-06-05 20:38:42 · 330 阅读 · 0 评论 -
DATE 17
my_strcpy,实现strcpy的功能#include<stdio.h>#include<string.h>#define N 100char my_strcpy(char *p1,char *p2) //指针变量!*p1、*p2{ int i; while(*(p1 + i) != '\0') //终止条件 { *(p2 + i) = *(p1 +...原创 2018-05-29 20:31:37 · 194 阅读 · 0 评论 -
DATE 13
选择语句:if(表达式) //逻辑表达式,关系表达式,数值表达式;{代码;}【 //下面的else是可以没有的;else{代码;}】if(表达式) {代码;}else if(表达式){代码;}else{代码;}【else是和前面最近的没有匹配的if相配对!】if(表达式){if(){}else{}}else(){}对于if——else1、if表达式成立的条件;2、else和i...原创 2018-05-24 23:29:29 · 376 阅读 · 0 评论 -
DATE 7
题目:输入父串子串,显示父串中子串的个数#include <stdio.h>#include <string.h>#define MAX 100int main(){ char src[MAX]; //定义父串数组的名字src char sub[MAX]; //定义子串数组的名字sub int i; int j;...原创 2018-05-18 22:17:06 · 3264 阅读 · 0 评论 -
开班第一天 20180512
今天第一天上课,从老师那里大致知道了什么是嵌入式,但是每个人随着深入的学习,对于嵌入式会有不同的认识,我想随着我的学习,对于嵌入式我会有我自己的认识。 马老师接着带我们了解了我们为什么要学习嵌入式,在信息大爆炸的背景下,5G的行业标准由中国华为、美国高通,欧洲制定,其中长码--美国高通;短码--高通/华为-->高通;控制码--华为。 马老师给我介绍了课程,在lin...原创 2018-05-12 22:50:03 · 297 阅读 · 0 评论 -
第二天 20180513
今天是第二天学习linux系统,主要学习了以下: 解决昨天的问题:1、touch和mkdir命令:验证方法:ls -l和tree命令;2、touch 9.avi:假设你是视频软件开发工程师(迅雷):解析一下文件格式;用touch命令创建的文件就是一般文件,至于文件的后缀,它只是一个后缀或者一个标志;当你用视频软件打开.avi文件或者用画图软件打开.jpeg文件的时候,视频软件或者画图软件会首...原创 2018-05-13 22:35:55 · 235 阅读 · 0 评论 -
DATE 8
动态库的封装:【add.c】1、创建库函数的源文件:vim add.c 和vim sub.c2、生成目标文件夹:gcc -c add.c -fpic3、生成动态库:gcc add.o -o libadd.so -shared【备注:libadd.so:lib是前缀,add是库的名字,so是后缀,代表的是动态库】4、建立调用库函数的源文件:vim demo.c5、编译执行:gcc demo.c ./...原创 2018-05-19 22:51:16 · 319 阅读 · 0 评论 -
DATE 9
C语言:用变量a给出下面的定义:①一个整型数; int a;②一个指向整型数的指针; ...原创 2018-05-20 19:39:01 · 380 阅读 · 0 评论 -
DATE 3
编辑;保存关闭;查找;在底行模式下输入:/查找的内容 【从光标所在行往下进行查找】?查找的内容 【从光标所在行往上进行查找】替换:对于某一行的替换:首先把光标定位到这一行s / 替换前的内容 / 替换后的内容 只替换第一个s / 替换前的内容 / 替换后的内容 / q 全行替换对于从第 m 行到第 n 行之间的内容进行替换m,ns / 替换前的内容 / 替换后的内容 只替换每一行...原创 2018-05-14 22:44:01 · 383 阅读 · 0 评论 -
DATE 14
Makefile:基于这样的现实:公司的工程代码不可能放在同一个.c(源文件)里面,根据不同的模块进行封装;导致的错误:1、多了个.c或者少了个.c文件;2、工程代码修改了之后==》重新编译==》gcc ...==》第一个错误!需求:1、更快捷效率的编译方式;2、make工程管理器应运而生;好处:参照《跟我一起写Makefile》文档;如何使用?1、首先创建源文件:main.c、add.c、sub...原创 2018-05-25 22:40:38 · 263 阅读 · 0 评论 -
DATE 10
左值右值:int a = 12;在定义变量的时候就给变量赋值,叫初始化; int a = 18;在定义变量之后,再对变量进行操作,比如改变变量的值,叫赋值; int a;a = 18;变量的作用范围:全局变量:作用范围是整个.c文件;局部变量:作用范围是{}所在的代码块;当全局变量和局部变量的作用范围有重合的时候呢?县官不如现管!!!数据类型的取值范围:有符号和无符号...原创 2018-05-21 23:38:06 · 268 阅读 · 0 评论 -
DATE 4
今天写了第一个小程序:通过编程实现,统计1~n有多少个9 提示:n通过参数传入#include <stdio.h>int main()//定义主函数{ int n,m,z;//定义三个变量 int i,j = 0;//定义两个变量 printf("输入n的值:");//显示提示信息 scanf("%d",&n); for(i = 1; i <...原创 2018-05-15 21:06:27 · 232 阅读 · 0 评论 -
DATE 15
今天的课程安排:1、字符数组;2、函数;3、指针;字符数组和字符串:String str1 = "hello"; //String数据类型在C语言里面没有,在C++和Java里面是有的;===》C里面是用字符数组的方式来保存字符串!strlen(str):表示的字符串的长度; char str[100] = {0}; '\0'表示的是字符串结束,‘\0’之前的字符是字符串的有效字符: ===》he...原创 2018-05-26 23:46:33 · 296 阅读 · 0 评论 -
DATE 11
输入数组,逆序输出#include<stdio.h>#include<string.h>#define N 100 //宏定义数组的长度int main(){ int i; //定义循环变量 int temp; //定义一个中间数,用来存放数据 int n; //定义...原创 2018-05-22 18:47:05 · 370 阅读 · 0 评论 -
DATE 16
字符数组和字符串:String str1 = "hello"; //String数据类型在C语言里面没有,在C++和Java里面是有的;===》C里面是用字符数组的方式来保存字符串!strlen(str):表示的字符串的长度; char str[100] = {0}; '\0'表示的是字符串结束,‘\0’之前的字符是字符串的有效字符: ===》hello world'\0' ===》‘\0’...原创 2018-05-27 18:25:54 · 295 阅读 · 0 评论 -
DATE 5
以下是我学习了数组,在网上看到的关于数组的一点资料,书本上没有的/*一直以为 int a[256]={0};是把a的所有元素初始化为0,int a[256]={1};是把a所有的元素初始化为1.调试的时查看内存发现不是那么一回事,翻了一下《The C++ Programming Language》总算有定论。PDF的竟然不然复制,就把它这章翻译了,如下5.2.1 数组初始化 数组可以用一个列值...原创 2018-05-16 19:41:56 · 251 阅读 · 0 评论 -
DATE 12
选择语句:if(表达式) //逻辑表达式,关系表达式,数值表达式;{代码;}【 //下面的else是可以没有的;else{代码;}】if(表达式) {代码;}else if(表达式){代码;}else{代码;}【else是和前面最近的没有匹配的if相配对!】if(表达式){if(){}else{}}else(){}对于if——else1、if表达式成立的条件;2、else和i...原创 2018-05-23 23:44:50 · 288 阅读 · 0 评论 -
DATE 17
#include<stdio.h>#include<string.h>#define N 100int main(){ int i = 0; int j = 0; int k = 0; char str[N] = {0}; //保存输入的字符串 char temp[N] = {0}; //专门用来从str里面解析出来的字符串; char max...原创 2018-05-28 23:10:57 · 174 阅读 · 0 评论 -
DATE 6
今天在梁老师的带领下写了第一个程序,简易计算器,还有很多bug,以后学的东西多了再加以改进!!#include<stdio.h>int main(){ double a; double b; double s; char c; printf("Please input number1:\n"); scanf("%lf",&a); getchar(); printf("Pleas...原创 2018-05-17 23:22:25 · 282 阅读 · 0 评论