- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 Day 30 在堆区创建结构体变量
#include<stdio.h>#include<stdlib.h>#include<string.h>typedef struct students{int age;char name[10];}Stu;\\ 此处只是声明了结构体变量,并没有为结构体分配空间Stu *get_info(){Stu*p;\\定义结构体指针if((p = (Stu*) malloc (sizeof(Stu)) == NULL);\\将申请到的堆区也就是动态存储区的内存
2020-08-06 22:05:46
485
原创 Day 29 指针变量的运算
int s[5];int*p;p=s;printf("%p %p/n",p,p+2);在以上例子中,p+2 代表了数组中第二个元素即s[2]的地址。假设p地址为0Xbf867231 那么 p+2 为0Xbf867239而不是0Xbf8672313.这是因为p指向的内容是int型数据,所以p+2要移动两个int的内存空间(8个字节)。同理:px-py得到的结果是两个地址之间的数据个数,而不是地址量的差值...
2020-08-05 19:19:08
197
原创 Day 20 结构体
一、结构体框架struct 结构体名{数据类型 成员名1;数据类型 成员名2;…数据类型 成员名n;};结构体类型变量的定义方法1、先定义结构体类型再定义变量名struct 结构体名{成员列表;};struct 结构体名 变量名;2、同时定义结构体类型与变量名struct 结构体名{成员列表}变量名1,变量名2;3、直接定义结构类型变量(应用较少)struct //无结构体名{成员列表;}变量名;结构体初始化1、struct 结构体名 变量名 =
2020-08-03 21:52:52
177
原创 Day 26 gcc编译器与gdb调试器
最近很迷茫,不停地做实验,机械的重复。感觉时光与岁月就在电火花与促动器声中蹉跎。但是无论怎样还是要坚持自己的选择,执行自己的计划!一、gcc所支持的后缀名-.c c的原始程序-.C/.cc/.cxx c++的原始程序- .s 汇编语言的原始程序-.o 目标文件1、gccgcc -E #预处理得到*.i文件gcc -S #编译得到汇编文件*.sgcc -c #汇编处理生成.o文件2、gdb 调试器gcc -g test.c -o test#生成.o文件gdb test #对t
2020-08-03 21:09:33
284
原创 Day 20 shell的结构语句
多路分支语句命令格式:case 字符串变量 in情况1)命令表;;情况2|情况三)命令表;;*)命令表;;esac其中,命令表以双分号结束,退出case语句。当一个分支匹配多种情况时,如情况2、3所示,可以通过“|”连接。*号与c中case语句的default用法相同,即其他未列出的情况。循环语句命令格式:for 变量名 in 单词表do命令表donefor循环的三种用法:罗列式,遍历文件目录,累加式。for i in 1,2,3,4 #罗列方式,i分别取
2020-07-28 20:58:34
99
原创 day 17 shell 脚本 命令
一、shell脚本编程步骤1、建立shell文件(.sh)2、赋予执行权限(chmod 740 file.sh 或者 chmod u+x file.sh)3、执行注:shell不支持任何的数据类型,将输入默认为字符串。二、shell脚本中的变量1、用户自定义变量与c不同,shell脚本定义变量时不需要说明变量类型。但是在调用变量时要在变量前添加美元($)。使用unset命令可以删除变量的赋值。2、位置变量位置变量就是通过输入的变量在命令行中所处的位置确定变量。**$1 $2 $3
2020-07-24 13:05:13
190
原创 Linux命令行以及常用技巧
Linux命令行1.开机关机命令sudo shutdown -h now\\关机sudo shutdown -h +45 "提示语句" \\45分钟后关机sudo shutdown -r now\\重启sudo shutdown -r +45 \\ 45分钟后重启2.输入命令太长或者在一行输入多个命令若将多个命令在一行书写,在命令之间用分号(;)隔开。若命令不能在一行写完,在行尾添加反斜杠(\)。按下两次Tab或者Esc键用于命令补齐;按下一次Tab键用于文件名补齐。3.shell中的特
2020-07-20 21:20:12
138
原创 Day16 指针函数、函数指针、函数指针数组
指针函数、函数指针、函数指针数组指针函数:返回值为指针的函数函数指针:存放函数的地址,这个地址是函数的入口地址,同时也是函数名。函数指针数组:保存若干个函数名(函数入口地址)的数组指针函数定义形式:<数据类型>*<函数名称>(<参数说明列表>)其中,数据类型是指函数返回值的数据类型;函数指针定义形式:<数据类型>(*<函数指针名称>)(<参数说明列表>)其中, 数据类型是指针指向的函数返回值的类型;参数说明中参数数据
2020-07-20 19:53:02
103
原创 Day 15 递归函数
递归函数以及案例**递归函数:**一个函数的本体中,直接或者间接引用了函数本身。以阶乘函数为例。#include<stdio.h>int mult(int s);int main(){inta,r;scanf("%d",&a);r = mult(a);printf("%d\n",r);}int mult(int s){if(s==1|s==0)s=1;elses=s*(mult(s-1));return s;}...
2020-07-20 16:45:45
112
原创 c语言 二维数组/杨辉三角
二维数组1、定义方式<数据类型><数组名>[常量表达式1][常量表达式2]其中,常量表达式1(行)可省略,常量表达式2(列)不可省略。2、存放顺序:行序优先;例:int a[3][2] 存储方式如下表所示:存储地址数组元素0a[0][0]1a[0][1]2a[1][0]3a[1][1]4a[2][0]5a[2][1]输出杨辉三角:编程思路:首先建立一个二维数组;在for循环中,利用if语句,将列数
2020-07-05 16:16:56
1287
原创 新手上路-Day 5 数组学习
新手上路机械在读研究生,编程小白,目前在自学嵌入式系统。为了督促自己的学习,同时也对每天的学习进行回顾。在此分享我自己的学习成果,以及有趣的小程序。希望各位大神不吝赐教!Day5 数组学习一维数组:一维数组:只有一个下标,在内存中连续存储。一、定义一维数组的几种方式:<存储类型><数据类型><数组名>[<表达式>];static int a[5]; \\默认数组元素初始化为0;int a[5] = {1,2,3};\\默认a[3] a[4]
2020-07-05 13:49:56
206
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人