- 博客(34)
- 资源 (2)
- 收藏
- 关注
原创 LSB语音水印算法的实现
主要实现思路,通过fopen()函数进行读取音频文件,得到一个数据范围在0~65535的数组,使用bitset()函数,能够将每个数据转换成二进制,并在最低位插入你想要插入的水印数据。水印数据用audioread来进行读取有一个量化取整的过程,该过程将原本数据范围由-1到1之间,转换为0到256,也就是八位二进制能够保存每个数据,这里采用八位二进制来保存是为了提高载体的水印容量。读取过程,就是嵌入的逆过程,使用bitget()函数将音频文件数据中的最后一位提取出来,再经过去量化的过程,得到的就是我们嵌入的
2020-10-21 16:35:18 1522
原创 webservice的建立
通过webservice来作为桥梁连接两个程序,需要有服务端和客户端,服务端作为接口提供相应的方法让客户端来调用,那么下面详细介绍服务端的建立和客户端的连接。//参考https://www.cnblogs.com/Brambling/p/6815565.htmlhttps://blog.csdn.net/han_better/article/details/81503910https://bl...
2020-03-27 22:36:28 234
原创 eclipse 中添加工程 Some projects cannot be imported because they already exist in the workspace
看了很多的方法,说将.project中的name修改之后,跟workplace中的文件不重名即可,引用网页且将但是,修改之后还是没有用。于是将原workplace中的所有文件打包成一个文件夹,压缩,并删除来文件,重启eclipse即可。...
2020-03-06 10:01:38 239
原创 HTML初步学习
HTML定义:一种超文本标记语言(超文本:能够插入图片、音频的页面) HTML的文件结构:headbody <html> <head> <title>hello html</title> </head> <body> ...
2018-03-13 20:04:07 157
原创 sublime开发微信小程序
sublime可以用来开发wxml和wxss使得代码高亮显示,通过将wxml设置为html,wxss设置为css类型来实现第二步就是将代码提示,这个用到了snippet库https://github.com/Abbotton/weapp-snippet-for-sublime-text-2-3 (哇,好开心,代码补全是这么的强大,省却了很多功夫,以及避免了很多问题,简直就是神器,打代码就跟开...
2018-03-10 09:33:06 1117
原创 微信小程序框架分析
微信小程序分为逻辑层和视图层,逻辑层用来处理业务逻辑,视图层用来渲染页面。 1. 视图层描述语言是:wxml和视图样式wxss 2. 加上JavaScript逻辑层语言和json配置文件,构建起了微信小程序框架框架页面文件工具类文件:框架全局文件:2.1微信小程序目录结构介绍: 1. 框架全局文件:对于框架全局文件来说,必须放在项目的根目录中。且包括三...
2018-03-08 21:43:28 3002
原创 微信小程序--helloworld
正式开始对于微信小程序的制作,下面就是具体的准备工作,预计花费十天的时间来完成这个工作通过阅读官方文档,将APPID、微信小程序的开发工具、文档准备就绪学会了微信小程序的开发工具的使用,会添加项目、编辑代码、调试代码学习了相关的快捷键,提高编码效率 Ctrl+S:保存文件 Ctrl+[, Ctrl+]:代码行缩进 Ctrl+Shift+[, Ctrl+Shift+]:折...
2018-03-08 11:11:48 362
原创 数据结构--线性表
线性结构–线性表数据结构中的逻辑结构分为线性结构和非线性结构,这一章和下一章我们会介绍线性结构,简单地说,线性结构是n个数据元素的有序(次序)集合,它有下列几个特征:1.集合中必存在唯一的一个”第一个元素”;2.集合中必存在唯一的一个”最后的元素”;3.除最后元素之外,其它数据元素均有唯一的”后继”;4.除第一元素之外,其它数据元素均有唯一的”前驱”。这一章我们就来讲解线性结构中线性表,它是最常用且
2017-10-25 14:54:30 336
原创 Qt的初步使用
一:读取文本构建输入框中,输入的内容:使用下图的方式调用 二:关闭窗口 打开窗口:三:界面间切换: a. 创建一个Qt 设计师界面类 b. c. d. 输入你想要的名字,然后之后会使用这个名字来调用,我们创建的 .ui文件,选择wi dget e. 输入类名 f. g
2017-10-24 18:45:27 318
原创 Java中常见的错误
Java中输入一串字符串使用空格隔开字符串转换类型java.lang.NumberFormatException:for input string :”y3[5]”,数字类型异常,转换数字类型出错java.lang.ArrayIndexOutOfBoundsException: 7 是数组下标越界错误package Person;import java.util.Scanner;publ
2017-10-24 13:45:28 369
原创 数据结构--基本概念
数据结构 数据之间的关系,称之为结构,总的来说就是数据结构数据结构是数据存储的方法,算法就是数据处理的方法,通过时间复杂度(time 简单记为T(O)=O(f(n)),f(n)就是重复执行某一操作的次数)和空间复杂度(程序使用内存的大小)来判断算法的效率通常我们学数据结构的同时也会学习算法,数据结构是数据存储的方式,而算法就是处理数据的方法,数据结构的不同就会导致算法的不同,数据结构的选择对算法效
2017-10-23 21:03:30 213
原创 Java继承与多态
class A{ int print{ System.out.println("zilei"); }}class B extends A{ super.print();//调用父类的方法}extends 使用extends来继承父类;super 使用父类的方法时,可以使用super.(方法),来调用父类的方法或者构造函数,其中父类以及子类是相对
2017-10-23 20:40:14 198
原创 Java的初步使用
根据UML图,定义抽象账单类Bill、子类水费账单类WaterBillpackage Bill;import java.util.Scanner;//花费时间四十,包含查询如何使用继承public class BillWaterBill { public static void main(String[] args) { Scanner input = new Scanne
2017-10-23 17:57:28 311
原创 初步认识qt
qt的定义:qt是一个跨平台的图形用户界面的程序开发框架;qt的下载:开始先在官网上下载了qt creator,需要自己手动配置 qt version, 但找不到文件所在地方,无奈放弃。 然后呢,在论坛上看到qt open sounce.dmg整个的文件安装链接,就下载了,论坛里说的是,默认下载下一步下一步久OK,但实际上呢,出现了:Xcode is not .这样的错误,接着谷歌
2017-10-23 17:49:01 251
原创 小型工资系统
技术点一:iterator (迭代器)是一个广义的指针,亦可以是一个可对其执行类似指针的操作; 如: 要为vector的double类型规范声明一个iterator,可以这样做vector<double>::iterator pd;//pd an iterator假设scores是一个对象vector<double>scores;pd=scores.begin();//hava pd poin
2017-05-07 19:19:26 381
原创 友元函数以及重载运算符
http://blog.csdn.net/insistgogo/article/details/6608672一:使用友元函数的原因: 实现了类之间的共享,减少开销,提高系统的效率;(缺点是:破坏了类的封装性,能不用尽量不用)二:使用时机: 一般是:运算符的重载,数据的共享;三:使用方法 因为友元函数没有this指针,则参数要有三种情况: 1、 要访问非static成员时,需要`对象
2017-05-04 21:28:03 788
原创 文件的输入和输出
简单的文件i/o程序写入文件一:创建一个ofstream对象来管理输出流 二:将该对象与特定的文件关联起来 三:以使用cout的方式使用该对象,唯一的区别就是输出将进入文件,而不是屏幕详细说下步骤: 首先应该包含头文件fstream,对于大多数但不是全部实现来说,包含该文件便包括iostream文件,因此不必显示包含iostream。 然后声明一个ofstre
2017-05-01 16:49:00 516
原创 virsual studio 使用
一:文件的建立 选择“文件->新建->项目” 这里注意的一点就是:一个项目中,可以有多个源文件,互不影响。二:调试当有出现问题时候,在左上方选择 :视图-》错误列表 就可以在下面看到错误的地方。 调试程序的话,
2017-04-27 21:20:15 1322
原创 调试Devc++
第一步:设置断点 (这里需要注意的一点就是,必须在项目中打开文件) 在所需设置断点的行,点击行数,这时就会变为红色,表示设置断点成功。第二步:调试(debug) 在左边的调试窗口,以及最下面的调试窗口进行调试,左边负责查看说调试的值,下面则控制下一步的动作。 右键 选择“添加查看“,输入’a’,然后点击调试,即可在左边看到a的值,以及所调试的行会变蓝;
2017-03-22 15:20:46 1182
原创 解决refinition
#include <iostream>using namespace std;#ifndef MAX2_H_H//使用这个可以使得不会出现refinition 重复定义的情况发生 #define MAX2_H_H // class Array_max{ public: void set_time(); void max_time();
2017-03-22 14:57:00 379
原创 using namespace std;
作用 http://baike.baidu.com/link?url=UfF6_nyXCdeoJ17Iv9xHakI5vfk1DnmiXcFD_NNNbpc0xmYq7EKPKBp2TzzJpqy5M3YIahEIjPAOMku2xsI5EggR_fhJmDys5wsSj80YC0xe9V1IItoK6lGJsc0pLWKa这是百度的详细解析 我来总结一下:c++标准库中所有的标识符都储
2017-03-09 12:28:16 247
原创 UNION
http://www.jb51.net/article/56009.htm 上文详细解析了union的用法。 定义:(类似struct) union text{char name;int number;float people;}a;虽然定义是与struct一样,但是占用内存不一样,以及使用方式不一样;将上面代码中的union改为struct,在使用sizeof(stru
2017-03-09 11:51:10 189
原创 定义与使用
#include "子函数3.h"#include <iostream>//尝试过把这两个库函数放在,自定义的函数中,但不行 using namespace std; //因为只有在调用自定义函数的情况下(就是使用swap),才去找这个文件,找到之后,//使用完之后就退出,那么当使用“cout",就会发现没有定义,因为确实没有declared iostream 这个函数库 int main(
2017-03-09 11:21:00 329
原创 数组的多种写法
#include <iostream>#include <string>using namespace std;void sort(string str[]);//这个是等价的 str[]等价于*str; int main() { string str[5]; int x,y; for(x=0;x<5;x++) cin>>str[x]; sort(
2017-03-08 13:41:56 1206
原创 函数模板的调用
http://blog.csdn.net/beyondhaven/article/details/4204345这里要注意的一点:每次调用T前,必须先声明T,例如template <nametype T>T swap(T a,T b);
2017-03-08 13:40:46 312
原创 头文件的定义
头文件建立你所在平台的一切功能的文件,如函数库,<stdio,h>,<math.h> 除了这些系统所自带库函数可以直接调用外,我们还可以建立自己的头文件,也可以称作是“自定义库”,如自己建立的“子函数.h” 定义函数名为“子函数.h”void swap(int &a,int &b){ int temp; temp=a; a=b; b=temp;}然后就像所有的
2017-03-08 12:46:55 2247
原创 char以及string的转换
#include <iostream>#include <string>using namespace std;void swap(string str[]);int main(){ string str[5]; int x; for(x=0;x<5;x++) cin>>str[x]; swap(str);//最大的问题就是 char以及string
2017-03-07 17:00:48 1009
原创 编程的核心
就我现在所学的所有C语言,包括if,while,struct,for(),链表等等 都是像工具一样,只是辅助,核心的是我们脑子里的编程思想。就像数学里的加减乘除,大家可能都懂,分数不一样的差异就在于想法,在于思维。扩宽来讲,就是算法数据结构(额。。。。我觉得是,我没学,准备学)我们做题时,把题目像数学题那样一步步分析,已知条件,要求的结果。 所以现在刚刚开始编程,可以先把加减乘除学好,但最主要的
2016-12-24 16:15:47 721
原创 格式化输入和输出
printf ,scanf,standerd input stream,standerd output stream,gets,puts,getchar,putchar 都包含在头文件stdio中//(standerd input,standerd output)的缩写,同理stdin//就是standerd input 第一 带域宽和精度的打印域宽(Fileld width)就是指:打印区域的
2016-12-24 15:47:10 305
原创 ACCIS
用单引号括起来表示,字符在ACCIS表中的数字,如int a;a='j';printf("%d",a);这时候输出的就是,j在表中的数字。
2016-12-23 13:43:37 220
原创 C语言指针
先介绍内存的定义,内存就是计算机中的储存空间,空间分为若干份每个单位为字节(BYTE),每部分都有一个地址,就像一本书,所有的内容都有页码,而页码就是指地址,我们声明一个变量时,int x;//就是 定义一个整型的且大小为四BYTE的空间 来储存x 的值,&X就是指x的地址;而int *n;//就是指 定义一个指向整型的指针; 在定义 n=&x;//表示n指向x的的指针 ,在接下来的代码中所有x
2016-12-22 14:46:05 253
GSM RPE-LTP语音压缩编码
2022-04-06
MATLAB实现LSB音频水印算法
2020-10-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人