Ide 与 Leetcode 运行结果不一样

在做 leetcode 的第 15 题, 3Sum 时发现,同样的代码在本地运行的结果是正确的,而在 leetcode 的服务器上结果却是错误的。而且检查了程序中,也并没有使用全局或者静态变量。 通过打印,仔细对比两种环境下的输出发现,原来是代码有一条语句指针指向了数组外边的第一个地址。语句的内容是比较当前地址的值是否和后一个地址的值相同, 由于后一个地址实际上已经发生了溢出,在当前地址为数组最后一个元素时,下一个地址就在数组外边了,这个地址的值是不确定的。在本地调试时,由于两个地址的值不同,所以程序结果正确,而在 leetcode 服务器上运行时,这两个值相同,因此程序最终的结果就错误了。     阅读全文
cyang's avatar
cyang 9月 16, 2018

J-Link V9 修复记录

j-link v9主控: stm32f205RC 现象 1、给 M0 下载固件的过程中经常出错,提示找不到M0。需要反复尝试很多次才可以下载。 2、在一次正常的拔线断电后,再也无法识别,灯也不亮了。     阅读全文
cyang's avatar
cyang 9月 13, 2018

MPEG 简述

MPEG AUDIO 简介MP3 是 MPEG Layer3 音频压缩技术的简写,这种技术可在音质极少损伤的情况下获取更好的压缩性能。MP3文件可以被压缩成不同的速率,文件压缩的越小,音质损伤越大。标准的压缩比例为10:1,一段3分钟的音频数据压缩后只需4MB大小。     阅读全文
cyang's avatar
cyang 8月 12, 2018

前导零计数

前导零计数计算一个 32位 数头部 0 的个数。例如 1 前面有 31 个0, 0 则前面有 32 个0。     阅读全文
cyang's avatar
cyang 8月 02, 2018

Fread 返回 0

fread 函数一直返回 0,检查过读取的数量不会超过文件大小,错误发生在打开文件时错误。 错误代码如下: FILE *in_file, *out_file; unsigned int open_files(const char *in_file_name, const char *out_file_name) { if( in_file = fopen(in_file_name, "rb") == NULL) return 0; if( out_file = fopen(out_file_name, "wb") == NULL) return 0; return 1; }     阅读全文
cyang's avatar
cyang 7月 25, 2018

记一款游戏--《程序员升职记》

最近在玩一款编程类的游戏,叫做《程序员升职记》,steam 平台只需¥36。通过组合几条非常基本的指令,例如加减、自加、自减、比较、跳转,实现一些小功能,例如简单的数值绝对值输出、两数乘法、阶乘运算、反转字符串等。游戏的本质是一款支持 11 条指令,最多支持 24 字节内存的 8 位 cpu 的运行。 这款游戏前面的一些关卡主要在引导和介绍游戏,同时不断给出新的指令,开始只有简单的几条指令,后面会加入对内存的使用,间接寻址的使用,因此可以实现指针的操作。每一关都会给出随机的输入,经过你编写的程序后,算出符合要求的输出。编写程序的过程可以通过单步运行来调试,所以可以很快知道程序在哪里出错,并修改。     阅读全文
cyang's avatar
cyang 7月 21, 2018

PCM 转 WAV pcmToWav

PCM 数据无法直接通过播放器打开,因为少了 44 字节的文件头,这里面最主要的信息是描述该 PCM 的采样频率,通道数,以及位数。 双击 pcmToWav.exe,拖入待转换的 PCM 数据,输入通道数和采样频率,默认使用 16-bit 表示一个采样点。等待程序运行结束,就会生成一个同名的 .wav 文件。     阅读全文
cyang's avatar
cyang 6月 07, 2018

文件转换为C数组 fileToC

fileToCgithub项目地址 简单说明fileToC 是一款使用 python 编写的程序,可以将任意文件的二进制数据转换为 .C 文件的数组,以便程序编译。 双击 fileToC.exe 程序,将要转换的 test.any 文件拖入命令行,等待程序自动转换,结束后便可以得到一个和该文件同名的 .c 文件     阅读全文
cyang's avatar
cyang 5月 18, 2018

CSDN博客数据导出

CSDN2HEXO 源码地址CSDN2HEXOCSDN2HEXO 是一款基于CSDN开放平台 的 csdn blog 内容下载器, 可以下载博客中的文章内容和图片,文章保存为 markdown 格式,图片可下载无水印图片,并根据文章标题生成文件夹存储相关数据。     阅读全文
cyang's avatar
cyang 4月 28, 2018

C语言中,隐藏结构体的细节

本文转载自 博客园 我们都知道,在C语言中,结构体中的字段都是可以访问的。或者说,在C++ 中,类和结构体的主要区别就是类中成员变量默认为private,而结构体中默认为public。结构体的这一个特性,导致结构体中封装的数据,实际上并没有封装,外界都可以访问结构体中的字段。     阅读全文
cyang's avatar
cyang 4月 18, 2018