- 博客(60)
- 资源 (2)
- 收藏
- 关注
原创 C语言输入详解(主要是scanf函数)
C语言基本输入在C语言中,有多个函数可以从键盘获得用户输入:scanf():和printf()类似,scanf()可以输入多种类型的数据;getchar():输入单个字符;gets():获取一行数据,作为字符串进行处理;getche():window平台特有输入函数,无缓冲的获取单个输入字符;getch():window平台特有输入函数,无缓冲无回显的获取单个输入字符。其中,scanf()是格式化输入函数,可通过格式控制符控制获取输入数据的类型。部分scanf()格式
2020-07-28 10:33:06
866
原创 C语言输入输出缓冲区和清空输入缓冲区的一种方式
为了让低速的输入输出设备和高速的用户程序能够协调工作,并降低输入输出设备的读写次数,计算机在内存中预留了一定的内存空间,用来暂时保存输入或输出的数据,这部分预留的空间就叫做缓冲区。根据数据刷新的时机,缓冲区可以分为全缓冲、行缓冲、不带缓冲三类缓冲区。全缓冲:在这种情况下,当缓冲区被填满后才进行真正的输入输出操作,缓冲区的大小都是有限制的,数据量达到最大值就清空缓冲区。行缓冲:当在输入或输出的过程中遇到换行符时,才执行真正的输入输出操作。scanf()、getchar()、gets()等C语言输入函数都
2020-07-28 10:16:17
638
原创 C语言输出(主要是printf函数)
C语言基础输出在C语言中,有三个函数可以用来在显示器上输出数据,它们分别是:puts():只能输出字符串,并且输出结束后自动换行。putchar():只能输出单个字符。printf():可以输出各种类型的数据。printf()是其中最灵活、最复杂、最常用的输出函数,它通过格式控制符对输出进行格式控制,它的部分格式控制符如下:printf高级输出printf() 格式控制符的完整形式:%[flag][width][.precision]type([ ] 表示此处的内容可有可无
2020-07-27 14:22:04
2879
原创 C语言变量与数据类型知识点详解
最近复习巩固了C语言的部分知识,整理了其中关于变量与数据类型的知识点,记录下来。在C语言中,变量存放在内存中,在内存中存取数据要明确三件事情:数据存储在哪里、数据的长度以及数据的处理方式。变量名不仅仅是数据的标识符,同时告诉了我们数据存储的地址;而数据类型则指明了数据的长度和处理方式。C语言中共有6中基本数据类型,分别是char、short、int、long、float、double,它们的长度和取值范围一般如下:可以使用以下代码打印它们各自的字节数。六进制表示。八进制:八进制由0– 7八个
2020-07-27 11:36:37
628
原创 C51串口通信的一种代码实现
#include <reg51.h>#define ReceiveMax 16unsigned char ReceiveBuffer[ReceiveMax] = {0};unsigned char Receiveflag = 0, ReceiveByteNum = 0, ReceiveInterval = 0;/******************************...
2020-02-06 23:45:14
796
原创 左移右移运算符的介绍和相关测试
左移运算是将一个二进制位的操作数按指定移动的位数向左移位,移出位被丢弃,右边的空位一律补0。右移运算是将一个二进制位的操作数按指定移动的位数向右移动,移出位被丢弃,左边移出的空位或者一律补0,或者补符号位,这由不同的机器而定。在使用补码作为机器数的机器中,正数的符号位为0,负数的符号位为1。(MSDN原文明确说明,右移对于无符号类型强制补0,对于有符号类型续补符号位)测试代码#include ...
2020-01-22 10:33:49
229
原创 C++ 数组队列的一种实现方式
Queue.h#ifndef QUEUE_H#define QUEUE_H#include <iostream>#include <cstring>#define Queue_MAXSize 10using namespace std;class Queue{private: int data[Queue_MAXSize]; int front...
2020-01-22 09:28:30
439
原创 递归解汉诺塔问题的C语言代码实现
递归函数:汉诺塔问题的递归算法:#include <stdio.h> void hanluota(int n, char x, char y, char z) { if(n == 1) { printf("move 1 from %c to %c\n", x, z); } else { hanluota(n - 1, x, z, y); ...
2019-09-24 14:50:41
233
原创 malloc与calloc的差别
malloc与calloc的差别:当系统的内存空间只剩下一些非常小的碎片时,用 calloc()函数设计的动态数组的时间效率优于用 malloc()函数设计的动态数组的时间效率。...
2019-09-24 14:49:50
193
原创 串
串:#include <stdio.h>#include <string.h>typedef struct{ char *str; int MaxLen; int Len;} String;int StringInitiate(String *S, int max, char *s){ int i = 0; S->str = malloc(s...
2019-09-24 14:49:08
115
原创 堆栈
堆栈和队列:堆栈可以用来完成数据元素序列的特定转换,队列可以用作数据元素序列的缓冲存储。顺序队列通常采用顺序循环队列方法实现,因为顺序循环队列可以避免顺序队列的“假溢出”问题。堆栈:堆栈只允许在固定一端进行插入和删除数据元素操作。操作集合:(1)初始化StackInitiate(S):初始化堆栈S。(2)判断堆栈是否为空StackNotEmpty(S):若堆栈非空,则返回1;否则返回...
2019-09-24 14:47:59
277
原创 线性表
线性结构的特点是,除第一个和最后一个数据元素外,每个数据元素只有一个前驱数据元素和一个后继数据元素。操作集合:(1)初始化ListInitiate(L):初始化线性表L。(2)求当前数据元素个数ListLength(L):函数返回线性表L 的当前数据元素个数。(3)插入数据元素ListInsert(L, i, x):在线性表L 的第i 个数据元素前插入数据元素x,插入成功返回1,插入失败返...
2019-09-06 11:46:03
341
原创 数据结构方向的一些基础概念
基本概念:数据(Data)是客观事物的符号表示,是所有能输入到计算机中并被计算机程序处理的符号的总称。数据元素(Data Element)是数据的基本单位,在计算机中通常作为一个整体进行考虑和处理。数据项(Data Item)是组成数据元素的、有独立含义的、不可分割的最小单位。数据对象(Data Object)是性质相同的数据元素的集合,是数据的一个子集。数据结构(Data Struct...
2019-09-06 11:42:02
248
原创 平时编程遇到的一些问题
C语言:函数原因:函数未申明函数多次申明结构体原因:如果结构体变量是地址,使用->如果结构体变量不是地址,使用.shell脚本:[测试符[测试符后面不要马上接表达式,而是要先加一个空格=赋值=给字符串赋值时不要在=两边加空格...
2019-09-04 20:48:56
121
原创 Linux环境
环境变量:getopt():头文件: #include “unistd.h”函数原型: int getopt(int argc, char* const argv[], const char* optstring);函数作用: 接受main函数argc、argv[]作为参数,接受一个选项制定符,选项制定符每个字符代表一个单字符选项,如果后面跟着一个:号,则表明该选项接受一个参数返回值: ...
2019-09-04 11:20:31
126
原创 Linux文件操作
open()函数作用:打开文件path,进行oflags操作。返回文件path的文件描述符。如果两个程序同时打开一个文件,将得到两个不同的文件描述符。头文件: #include "fcntl.h"函数原型:int open(const char* path,int oflags);或int open(const char* path,int oflags, mode_t mode); ...
2019-09-01 15:44:48
249
原创 ARM汇编指令
ARM指令的一般编码格式:cond: 指令执行的条件编码opcode: 指令操作符编码S: 决定指令操作是否影响CPSR的值Rd: 目标寄存器编码Rn: 第一个操作数的寄存器编码shifter_operand: 第二个操作数一条典型的ARM指令语法格式如下:条件码如下:ARM指令分六类:跳转指令、数据处理指令、PSR传送指令、内存访问指令、协处理器指令、异常中断指令。跳转...
2019-09-01 14:32:09
549
原创 C语言的一些重要知识点
1.数据类型数据类型的本质是一个模子变量的本质是一段实际内存空间的别名voidvoid不能定义变量和数组,但能够定义指针。void指针的意义void指针作为左值时用于“接受”任意类型的指针void指针作为右值使用时需要强制类型转换。有符号数对于有符号位:最高位为1,表示这个数为负数。最高位为0,表示这个数为正数。注意:在计算机内部用补码表示二进制数有符号数正数的补码就是它...
2019-09-01 13:05:57
276
原创 Linux常用命令
pwd 查看当前目录ls 显示当前目录文件参数选项:–l:显示文件的详细信息-a:显示所有文件,包括隐藏文件。–h:将文件大小以k的形式显示出来cd 切换路径参数选项:~:切换到当前目录的家目录.:切换到当前路径-:回到上次路径mkdir 新建目录rmdir 删除目录touch 新建一个文件gedit 编辑一个文件cp 复制一个文件cat 显示一个文件的内...
2019-09-01 11:41:28
184
原创 shell脚本命令
shell学习笔记——Linux程序设计shell是一个作为用户与Linux系统间接口的程序,它允许用户向操作系统输入需要执行的命令。$ /bin/bash --version 查看bash的版本号$ /bin/sh * 执行一个脚本文件$ chmod +x * 设置一个脚本文件为可执行重定向:> >> 2> >&$ ls -l &...
2019-08-28 14:53:55
397
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人