学习笔记
记录学习中遇到的难点和问题以及解决办法
学如逆水行舟,不进则退3038
热爱生活,热爱运动
展开
-
C/C++中比较字符串的方法
C/C++中比较字符串的方法原创 2023-02-27 14:46:38 · 199 阅读 · 0 评论 -
C语言的access函数的用法
ENOENT:路径名中的目录不存在或是无效的符号连接。ELOOP : 解释路径名过程中存在太多的符号连接。EACCES: 文件或路径名中包含的目录不可访问。ENOTDIR: 路径名中当作目录的组件并非目录。检查调用进程是否可以对指定的文件执行某种操作。F_OK 测试文件是否存在。X_OK 测试执行许可权。EFAULT: 路径名指向可访问的空间外。R_OK 测试读许可权。W_OK 测试写许可权。ENOMEM: 不能获取足够的内核内存。mode:需要测试的操作模式。原创 2023-01-13 16:56:47 · 1360 阅读 · 0 评论 -
结构体指针数据 指针数组 数组指针
p+i是一维数组a[i]的地址,即p+i==&a[i];对该式两边作取内容运算(*)得*(p+i)==a[i],由于二维数组中a[i]==&a[i][0],则*(p+i)表示a[i][0]的地址,即*(p+i)==&a[i][0];注:因为数组指针对于一维数组的使用比较尴尬,对于一维数组,建议使用指针数组比较方便,这里只涉及到关于二维数组与数组指针的知识!这里a是个二维数组的数组名,相当于一个二级指针常量;它是一个数组,数组的元素都是指针,数组占多少个字节由数组本身的大小决定,每个元素都是一个指针。原创 2022-12-14 11:28:10 · 661 阅读 · 0 评论 -
final修饰的变量最多智能在构造里面赋值
final(不可变)Java 构造方法、final - 守林鸟 - 博客园原创 2022-08-31 11:47:02 · 653 阅读 · 0 评论 -
android 实现用户切换 am switch-user 0
am switch-user 0 //一般0本机机主,10或者11都是新用户。原创 2022-08-23 15:54:10 · 1546 阅读 · 0 评论 -
printf()打印char* str
printf("%p\n",&str);//输出指针str的地址。printf("%p\n",str);//输出字符串首字符地址。printf("%c\n",*str);printf("%s\n",str);原创 2022-07-26 15:56:32 · 3277 阅读 · 0 评论 -
GB、MB、KB分别是什么意思。大小分别是多少
1Byte=8bit1KB=1,024Bytes=8192bit1MB=1,024KB=1,048,576Bytes1GB=1,024MB=1,048,576KB1TB=1,024GB=1,048,576MB。原创 2022-07-22 10:18:02 · 2863 阅读 · 0 评论 -
Monkey 压力测试
Monkey压测原创 2022-07-13 10:33:06 · 262 阅读 · 0 评论 -
FFmepg使用指南
FFmepg使用指南原创 2022-06-30 14:31:22 · 873 阅读 · 0 评论 -
byte和bit的区别
1、byte和bit的区别,一个bit是一个0或1叫做一个二进制位。一个byte是8个bit叫一个字节,一个byte由8bits组成,是数据存储的基础单位,1byte又称为一个字节,用一个字节Byte储存,可区别256个数字。原创 2022-06-10 10:17:08 · 635 阅读 · 0 评论 -
音视频格式.mp4和编码格式MPEG4以及ffmpeg转码
1、mpeg4和mp4格式不一样,区别是:1、MP4是一种视频文件格式,而mpeg4是一个编码标准,即为一个编解码器。可以理解为,mp4是支持mpeg4的标准的音频视频文件,而支持mpeg4标准的文件格式有很多种,mp4和avi都是其中的一种。2、MP4 是一种视频格式,它可以存储不同的媒体,通常使用 MPEG4 编解码器进行压缩,但并非总是如此。而 MPEG4 本身可以应用于不同的文件格式,包括 MP4、MOV、AVI、MKV、OGG 和 MXF。3、编解码器是对信号进行编码和解码的程序。媒体编解原创 2022-05-30 16:16:09 · 7380 阅读 · 0 评论 -
Android.mk中添加宏定义
1、 Android.mk中添加宏定义Android.mk中添加宏定义_一叶飘舟的博客-CSDN博客_android.mk添加宏Android.mk中添加宏定义_mb60ffdbe016b5d的技术博客_51CTO博客2、系统编译中LOCAL_CFLAGS的用法系统编译中LOCAL_CFLAGS的用法_星空梦想plus的博客-CSDN博客33、eg:在Boardconfig.mk中Andorid.mk:使用在android.mk中定义的宏:...原创 2022-04-29 11:41:06 · 2380 阅读 · 0 评论 -
errno来分析定位问题
可以通过strerror(errno)查看错误信息, errno是调试程序的一个重要方法。常见的errno错误码有以下这些:#define EPERM 1 /* Operation not permitted */#define ENOENT 2 /* No such file or directory */#define ESRCH 3 /* No such process */#define EIO 5 /* I/O error */#define ENXIO 6 /* No such d原创 2022-04-25 19:23:24 · 564 阅读 · 0 评论 -
Android 属性property_get/property_set
1、property_get和property_set使用方法property_get和property_set使用方法一.使用方法每个属性都有一个名称和值,他们都是字符串格式。属性被大量使用在Android系统中,用来记录系统设置或进程之间的信息交换。属性是在整个系统中全局可见的。每个进程可以get/set属性。如下面我们可以在系统中代码设置属性或命令行设置属性,用于系统中的判断,setprop WLAN.SWITCH.FLAG 1getprop WLAN.SWITCH.FLAG..原创 2022-04-25 10:58:09 · 6520 阅读 · 0 评论 -
字符串对象数组集合非空判断
String 字符串import org.apache.commons.lang3.StringUtils;//直接用字符串调用方法 str.isEmpty() 如果为null则会抛出异常 if (StringUtils.isEmpty(str)){// "" 和null均判断为空 System.out.println("string为空");}maven依赖<dependency> <groupId>org.apache.commons&l原创 2022-04-22 22:30:41 · 157 阅读 · 0 评论 -
android彻底卸载apk
第一种方式:1.删除/data/app/xxx的apk2.删除/data/data/com.xxx 的安装缓存目录第二种方式:adb uninstall 包名 //可以在AndroidManifest.xml 查看package="com.example.test"包名# adb uninstall com.example.test————————————————...原创 2022-04-22 18:11:37 · 3428 阅读 · 0 评论 -
编译错误和crash汇总
1、java.lang.NullPointerException: Attempt to get length of null array解决方法参考判断空数据一定要先判断是否为null,再判断数据的长度。if(array != null && array.leng != 0){undefined//数据不为空数据的判断.......}......原创 2022-04-22 17:59:23 · 3684 阅读 · 0 评论 -
将文件中的tab符转化为4个空格
//javafind . -name '*.java' ! -type d -exec bash -c 'expand -t 4 "$0" > /tmp/e && mv /tmp/e "$0"' {} \;//c++find . -name '*.cpp' ! -type d -exec bash -c 'expand -t 4 "$0" > /tmp/e && mv /tmp/e "$0"' {} \;//pythonfind . -nam.原创 2022-04-07 16:15:27 · 2515 阅读 · 0 评论 -
解决VirtualBox“不能为虚拟机xxxx电脑 打开一个新任务”
解决VirtualBox“不能为虚拟机xxxx电脑 打开一个新任务”_虾虾妮的博客-CSDN博客_virtualbox不能为虚拟机打开一个新任务原创 2022-03-21 15:07:05 · 7383 阅读 · 0 评论 -
Android set/get property
原创 2021-12-30 22:03:55 · 810 阅读 · 0 评论 -
java和C/C++的dump trace堆栈打印
1、Java dump backtrace方法:Log.e(TAG,Log.getStackTraceString(new Throwable()));2、C++ dump backtrace方法:原创 2021-12-30 22:00:41 · 1240 阅读 · 0 评论 -
Swicth case语句不加break的后果
#include <stdio.h> #include <stdlib.h> int main(int argc, char ** argv) { int value = 0; switch(value) { case 0: printf("case 0\n"); case 1: ...转载 2021-12-27 13:53:42 · 348 阅读 · 0 评论 -
try catch finally执行顺序
from: https://www.iteye.com/blog/qiang106-254940大家都知道try{}chatch(){}finally{}是java中异常处理最常见的一种方法,面试中也经常会考到这方面的知识,我也看了无数遍,但总是很容易忘记,也许写出来会记忆深刻些吧.假设try块中一个return语句的话,那么catch和finally中的代码还会执行吗?如果会执行,那么顺序又是什么?我写了个测试类分别测试了以上问题:测试一:class Test22{publi原创 2021-12-16 22:02:30 · 99 阅读 · 0 评论 -
addr2line来定位问题
1、这里有个原则:谁编译的水来定位。addr2line –Cfe so目录 PC地址Or:addr2line –C –f -e so目录 PC地址2、在andorid/p-base/out下搜索带有symbol的*.so (带有symbol的含有debug信息)...原创 2021-12-02 23:02:00 · 297 阅读 · 0 评论 -
callback函数
回调函数通俗的解释: 普通函数:你所写的函数调用系统函数,你只管调用,不管实现。 回调函数:系统调用你所写的函数,你只管实现,不管调用。以下是使用C语言实现回调函数的一个例子:代码:[cpp]view plaincopy#include<stdio.h>voidPrintNum(intn);voidShowNum(intn,void(*pt...原创 2018-04-17 20:38:15 · 135 阅读 · 0 评论