- 博客(60)
- 收藏
- 关注
原创 基于RV1106将H264文件封装为mp4文件的三种方法(三种库)
基于RV1106,使用MP4V2库将H264码流封装为MP4视频,从编译库到实现MP4播放。
2024-05-11 16:24:55 496
原创 C语言知识点查缺补漏
1、控制不同进制的输出int a = 100; printf("原样输出\n"); printf("16进制为a=0x%x\n",a); printf("10进制为a=0d%d\n",a); printf("8进制为a=0o%o\n",a);2、混合输入#include<stdio.h>int main(){ int a; char b; float c; printf("分别输入一个数字、字符、小数\n"); scanf("%d%c%f",&a,&
2022-08-21 20:25:18 477
原创 linux下实现贪吃蛇小游戏
1、为什么我们需要使用ncurse?因为在玩贪吃蛇时,我们需要一个很快的按键响应,ncurse在即时按键响应这方面做得比较好,当然现在已经很落后了。
2022-08-15 23:07:22 1448
原创 类与对象。
类:类是描述一个事物(对象)的集合,涵盖了事物的属性特征和行为特征。属性特征:描述事物的状态。(是什么)行为特征:描述事物的行为。(能做什么)对象:是类的具体,是类的一个具体实例。人类====男人 + 女人。关系:类是抽象的,对象是具体的。//对象的创建与访问//数据类型:8种数据类型,引用数据类型//格式:数据类型 变量名称 = new 数据类型();变量名称放入栈中,new开辟的空间放入堆中,当栈中地址与堆中地址一致时就可以访问,所以叫访问数据类型,定义类就是定义类的成员,包括成
2022-05-22 10:28:59 94
原创 JAVA基础语法(下)
方法重载:多个方法名称相同,参数列表不同(参数个数不同、参数类型不同)。打印的方式调用函数,函数必须要有返回值。数据类型:用来指定开辟多大内存空间。new:java中的关键字,用来开辟内存空间。//动态初始化int[] array = new int[10];//初始化一个int数组,里面存放十个数据double[] array1 = new double[20];String[] array3 = new String[23];//静态初始化public static void main
2022-05-12 19:41:43 170
原创 java实现99乘法表
package com.smh;public class Mult{ public static void main(String[] args) { int i = 1; int j = 1; for(i=1;i<=9;i++) { for(j=1;j<=9;j++) { System.out.print((i*j)+" ")
2022-05-11 10:42:25 116
原创 JAVA基础语法(中)
一、八种基本数据类型计算各数据类型大小:package com.smh;//package是关键字,表示包名,创建类时,在src文件夹下面创建一个com.smh的文件夹public class hello{ public static void main(String[] args) { System.out.println("int整数类型的最小值是:"+Integer.MIN_VALUE); System.out.println("int整数
2022-05-11 10:41:16 47
原创 JAVA基础语法上
运行JAVA程序需要使用JRE开发JAVA程序需要使用JDKJDK包含开发工具和JRE,JRE又包含系统API和JVM.JAVA1.8:编译工具:JAVAC.exe运行工具;java.exebin文件夹:该文件夹存放了JDK的各种具命令include:存放平台特定的头文件lib:存放JDK工具的一些补充JAR包conf:存放JDK相关配置文件(1.8版本没有这个文件夹)Source:源(Src)cd指令一次进入两个文件夹:cd ruanjian\java1.8cls:清屏cd…回退到
2022-05-07 19:01:20 204
原创 socket网络编程
怎么让两台设备之间互相通信呢?这就涉及到了网络通信,那么一台设备如何找到另一台设备呢?通过网络地址,地址又包括IP地址与端口号,端口号的作用在于当一个IP地址上面同时跑很多程序时,端口号用于区分这些程序。TCP与UDP的区别:1、 TCP面向连接 (如打电话要先拨号建立连接); UDP是无连接 的,即发送数据之前不需要建立连接2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付Tcp通过校验和,重传控制,序号标识,滑
2022-05-02 17:59:53 388
原创 Linux多线程
为什么要使用多线程?传统的linux进程可以看成只有一个控制线程:同一进程在同一时刻只能执行一件事情。有了多个控制线程后,我们可以把程序设计成在同一时刻不只做一件事情。进程是系统中程序执行和资源分配的基本单位。每个进程有自己的数据段、代码段和堆栈段。这就造成进程在进行切换等操作时都需要有比较负责的上下文切换等动作。为了进一步减少处理器的空转时间支持多处理器和减少上下文切换开销,也就出现了线程。(就是防止进程某一部分等待,导致进程白白切换)。使用多线程的理由之一是和进程相比,它是一种非常"节俭"的多任务操
2022-04-30 17:31:07 376
原创 进程间通信
什么是进程间通信?两个进程可以同时往公共内存区(管道)存或发数据这样的全双工通信是真正意义上的通信。一、管道管道通常指无名管道特点:(1)它是半双工的,数据只能在一个方向上流动。(2)只能用于父子进程间通信。(3)它可以看成是特殊的文件,对于它的读写,也可以使用write,read等函数;但它不属于文件,不存在于其他任何文件系统,只存在于内存中。原型: #include <unistd.h> int pipe(int pipefd[2]);pipe是创建一个管道,
2022-04-26 15:53:34 106
原创 一篇文章了解Linux下进程相关知识
1、什么是程序,什么是进程,有什么区别?程序是静态的概念,进程是动态的概念。gcc a.c -o a,a就是一个程序,存在于硬盘中,当a跑起来之后,系统中就多了一个进程,进程就是跑起来的程序。2、什么是进程标识符?每个进程都有唯一的非负整数表示唯一ID,叫做pid,类似进程的身份证pid = 0,交换进程,作用是进程调度pid = 1,init进程,作用是系统初始化用top来查看进程的pid以及占用cup,以评估程序好坏。#include <stdio.h>#include
2022-04-25 16:17:20 2462
原创 一篇文章搞懂Linux文件操作
打开函数:open读写函数:write/read光标定位:lseek关闭:closeman 2 open:在man手册第二页查看open函数一、打开文件(1) int open(const char *pathname, int flags):const char *pathname:是一个字符串,表示的是要打开的文件地址;flags:包含以下标志位O_RDONLY 以只读方式打开文件O_WRONLY 以只写方式打开文件O_RDWR 以可读写方式打开文件. 上述三种旗标是互斥的, 也
2022-04-22 18:06:54 3340
原创 通过LCD1602来了解时序
这张图片说明LCD1602共有两行32个位置来显示字母,那如何定义在哪个位置来显示字母,显示的字母是什么呢?这里我们定义一组输出口为D0—D7,共8位来控制字符的输出。例如第二行第一个字符的地址是 40H,那么是否直接写入 40H 就可以将光标定位在第二行第一个字符的位置呢?这样不行,因为写入显示地址时要求最高位 D7 恒定为高电平 1 所以实际写入的数据应该是 01000000B(0x40) +10000000B(0x80)=11000000B(0xC0)。要写入数据时,我们让数据口输出为上面每.
2022-04-18 21:30:56 2355
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人