
编程语言
Eyrane
这个作者很懒,什么都没留下…
展开
-
C++——多线程互斥锁
#include<Windows.h>#include<iostream>using namespace std;DWORD WINAPI MyThread2(LPVOID lpParamter){ while (1) { cout << "MyThread2 Runing" <原创 2018-05-10 15:05:42 · 868 阅读 · 0 评论 -
C++——多继承 虚继承
一,多继承#include<iostream>#include<string>using namespace std;class B1 {public: B1(int i){cout<<"B1类"<<" "<<i<<endl;} };//定义基类B1class原创 2015-10-27 21:08:05 · 442 阅读 · 0 评论 -
C++——istringstream、ostringstream、stringstream
C++引入了ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含sstream.h头文件。istringstream类用于执行C++风格的串流的输入操作。 ostringstream类用于执行C风格的串流的输出操作。 strstream类同时可以支持C风格的串流的输入输出操作。#include<iostre...原创 2015-10-28 12:29:39 · 529 阅读 · 0 评论 -
C++——动态内存
new-delete和malloc-free一,new-delete#include <iostream>using namespace std;void main(){ int **p; p=new int*[3];//在堆中开辟内存,该内存是连续的,p指向首地址 cout<<p<<" "<<p+1&l...原创 2016-03-02 15:34:55 · 366 阅读 · 0 评论 -
C++——文件指针定位--fseek,ftell
#include <iostream>using namespace std;void main(){ FILE *fp=fopen("1.txt","a+"); cout<<ftell(fp)<<endl;//最开始时,指针的初始位置为0,即文件的开始位置 cout<<fgetc(fp)<<end原创 2016-03-22 21:46:31 · 7509 阅读 · 0 评论 -
C++——随机数 随机丢包
1.随机数 rand()函数, srand()函数rand():会返回范围在0至RAND_MAX 间的随机数; rand()%x:会返回范围在0至x-1间的随机数;srand(seed)设好随机数种子(seed); srand((unsigned) time(NULL)); srand(unsigned(time(0)));x = rand()%11; ...原创 2016-04-22 18:22:36 · 2089 阅读 · 2 评论 -
数据结构——树
http://blog.51cto.com/9291927/2068745树的定义:除根结点以外的其他结点划分为m(m>=0)个互不相交的有限集合。 树的度、前驱和后继、层次、有序性 森林(多个互不相交的树)...原创 2018-05-04 18:01:39 · 157 阅读 · 0 评论 -
线程同步、条件变量pthread_cond_wait
linux下的c语言编程有多种线程同步机制,最典型的是条件变量(condition variable) pthread_cond_init (pthread_cond_t *cond, const pthread_condattr_t *attr);//创建条件变量 pthread_cond_wait (pthread_cond_t *cond, pthread_mutex_t *mutex)...原创 2018-05-11 10:50:51 · 303 阅读 · 0 评论 -
c语言基础题
指针和引用: 引用是一个对象的别名,没有分配内存,但指针有内存;引用必须初始化,与对象绑定,但指针可以不初始化;引用初始化后不能改变与其绑定的对象,但指针可以指向新的地址。int a,b,*p,&r=a;//正确r=3;//正确:等价于a=3int &rr;//出错:引用必须初始化p=&a;//正确:p中存储a的地址,即p指向a*p=4;//正确:p中存的是a...原创 2018-05-11 21:53:32 · 197 阅读 · 0 评论 -
c++——多线程
头文件#include<pthread.h>函数声明int pthread_create(pthread_t *tidp,const pthread_attr_t *attr,(void*)(*start_rtn)(void*),void *arg);参数 第一个参数为指向线程标识符的指针。 第二个参数用来设置线程属性。 第三个参数是线程运行函数的起始地址。 ...原创 2018-05-07 16:11:24 · 194 阅读 · 0 评论 -
字符串数组
一,初始化 定义一个数组char a[10]; 怎么给这个数组赋值呢? 1、定义的时候直接用字符串赋值 char a[10]=”hello”; 2、对数组中字符逐个赋值 char a[10]={‘h’,’e’,’l’,’l’,’o’}; 3、利用strcpy char a[10]; strcpy(a, “hello”);易错情况: 1、char a[10]; a[10]=”h...原创 2018-05-08 09:29:46 · 993 阅读 · 0 评论 -
c语言——变量的地址
#include &lt;stdio.h&gt;#include &lt;stdlib.h&gt;#include &lt;string.h&gt;void main(){ char s[] = "123456"; char d[] = "123"; printf("%d %d\n&原创 2018-05-21 18:33:09 · 4780 阅读 · 1 评论 -
删除字符串中的子串
输入2个字符串S1和S2,要求删除字符串S1中出现的所有子串S2,即结果字符串中不能包含S2。 输入样例: Tomcat is a male ccatat cat 输出样例: Tom is a male#include<stdio.h>//Tomcat is a male ccatat//catint main (){ char s1[81], s2[8...原创 2018-05-22 10:45:16 · 15443 阅读 · 2 评论 -
字符串倒序和单词逆置
字符串倒序#include <stdio.h>#include <string.h>char* str_reverse(char* str){ int n = strlen(str) / 2; int i = 0; char tmp = 0; for(i = 0; i < n; i++) { t...原创 2018-05-22 11:24:06 · 1391 阅读 · 0 评论 -
使用移位运算和加减法实现乘除法
https://blog.youkuaiyun.com/yabiaoao/article/details/51088740转载 2018-05-24 10:00:30 · 7624 阅读 · 0 评论 -
大端和小端
https://www.cnblogs.com/berry/articles/1588084.html大端:高字节存储在低地址,低字节存储在高地址 小端:高字节存储在高地址,低字节存储在低地址intel芯片是小端存储;单片机是大端存储...转载 2018-05-24 15:39:25 · 3400 阅读 · 0 评论 -
线程和进程
https://www.cnblogs.com/wuchanming/p/3992395.html?utm_source=tuicool&utm_medium=referral进程是系统分配资源的基本单位,同一进程中的所有线程共享该进程的所有资源。 进程可以包含多个线程。 进程拥有资源,线程不拥有,但可以访问。互斥:线程间访问资源的排他性。 同步:线程间的制约关系,一个线程的...转载 2018-05-24 16:11:18 · 336 阅读 · 0 评论 -
C++——深拷贝、浅拷贝
#include <iostream>using namespace std;class CExample {private: int a;public: CExample(int b) { a=b;} void Show () { cout<<a<<endl; }};in...原创 2018-06-01 10:00:14 · 335 阅读 · 0 评论 -
C++——静态
一,局部静态变量#include<iostream>#include<string>using namespace std;class Student{ int n; string name;public: void set(string thename) { static int number=0;/...原创 2015-10-26 23:17:12 · 437 阅读 · 0 评论 -
C++——cin cout
使用cout时,系统会在内存中开辟一段缓冲区,用来暂存输入输出流的数据,先把数据顺序存放在输出缓冲区中,直到该语句结束为止,此时将缓冲区中已有的数据一起输出,并清空缓冲区。使用cin<<时,不能把空格字符和回车换行符作为字符输入给字符变量,它们将被跳过。如果想将空格字符或回车换行符(或任何其他键盘上的字符)输入给字符变量,可以调用成员函数get等。 在组织输入流数据时,要仔细分析...原创 2015-10-26 17:25:43 · 619 阅读 · 0 评论 -
static和extern
c语言中的 static: 修饰局部变量:存放在静态数据区,生命周期位整个程序结束,但作用于仍为函数局部。 修饰全局变量:无法被同一工程其他源文件访问。 修饰函数:与全局变量类似。 extern:可被同一工程其他源文件访问c++中static: 修饰类中函数:表示该函数属于一个类,而不是此类的任何特定对象。 修饰类中变量:表示该变量为所有对象所有,在存储空间中只有一个副本。要调...转载 2018-05-10 15:19:15 · 1437 阅读 · 0 评论 -
printf("%f",5)的输出结果
#include <stdio.h>void main(){ printf("%f\n",5); printf("%d\n",5.01); printf("%f\n", (float)5); printf("%f\n", 5.f);}printf函数不会进行任何类型转换,它只是从内存中读出你所提供的元素的值(按照%d,%f...原创 2018-05-17 08:50:01 · 4921 阅读 · 0 评论 -
python学习1
0.说明1.基础语法和变量类型2.运算符、条件语句、循环语句3.列表、元组和字典4.时间和日期5.函数6.自定义的模块并调用7.控制台io和文件io8.异常处理9.类10.GUI编程11.练习实例112.练习实例20.说明学习网址:http://www.runoob.com/python/python-operators.html github地址:...原创 2018-02-25 15:25:07 · 339 阅读 · 0 评论 -
汇编学习2——寄存器(CPU工作原理)
CPU概述:一个典型的CPU由运算器、控制器、寄存器等组成,这些器件由内部总线相连。 寄存器概述:CPU工作时存储数据的器件。8086CPU有14个寄存器:通用寄存器(AX BX CX DX) SI DI SP BP IP 段寄存器(CS SS DS ES) PSW,都是16位。 通用寄存器可以分为两个独立的8位寄存器,以保证兼容性:AX可以分为AH和AL。AL的进数不会放入AH。 一个字...原创 2018-02-28 23:41:52 · 398 阅读 · 0 评论 -
汇编学习1——基础知识
机器语言:01构成,计算机能识别。 0101000 == PUSH AX汇编语言的主体是汇编指令。汇编指令和机器指令的差别在于指令的表示方法上,汇编指令是机器指令便于记忆的书写格式,是机器指令的助记符,与机器指令一一对应。每一种CPU都有自己的汇编指令集。 机器指令:1000 1001 1101 1000 //寄存器BX的内容放入AX中 汇编指令:MOV AX BX //更接近人类...原创 2018-02-27 22:28:56 · 216 阅读 · 0 评论 -
C++——从文件中查找特定字符串并转换为数字输出
从文件clk_summary中得到 sclk_ddrc的值786000000 代码如下:void get_ddr_freq(){ char file_str[1024]; char *p; int ddr,i=0; FILE *fp = fopen("/sys/kernel/debug/clk/clk_summary","r"); if (f...原创 2018-01-16 10:19:15 · 791 阅读 · 0 评论 -
C++——open()、mmap()、write()
1.open() 头文件:#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>一个demo: signed int vpu_socket; vpu_socket = open("/dev/rkvdec", O_RDWR);//O_RDWR 以可读写方式打开文件具...原创 2018-01-12 17:16:15 · 5846 阅读 · 0 评论 -
C++——负数的存储和移码
最近在工作中需要用36bit存储一个负数,定义了 typedef __int64 int64_t型的整数存储该值。正数的源码、反码、补码都相同,如: +1 = 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0001(64bits)负数的原码的最高位为1;反码为原码符号位不变,其他位取...原创 2018-01-10 14:13:13 · 2597 阅读 · 0 评论 -
C++——空语句的测试
空语句的作用:消耗CPU时间,起到延时的作用int main(){ long i = 100000000; clock_t start, finish; double Total_time; printf("Time to do %ld empty loops is ", i); start = clock(); while (i--);...原创 2017-11-07 20:40:35 · 1228 阅读 · 0 评论 -
C++——yuv文件进行下采用和插值
1.opencv不支持yuv文件直接操作,要先将yuv转换成rgb 2.下采样:IplImage * result = cvCreateImage( cvSize( src->width/2, src->height/2 ), src->depth, src->nC...原创 2017-04-06 12:19:48 · 1629 阅读 · 0 评论 -
C++——继承 构造器和析构器
#include"iostream"#include"string"using namespace std;class Animal{protected: string name;public: Animal(string thename){name=thename;cout<<name<<endl;} void eat(){cout&...原创 2015-10-14 20:34:49 · 627 阅读 · 0 评论 -
C++——指针和引用
(1)系统为指针分配内存,引用与绑定的对象共享内存空间;引用访问对象是直接访问,指针访问是间接访问;引用必须初始化;(2)作为形参 指针传递参数本质上是值传递的方式,它所传递的是一个地址值。值传递过程中,被调函数的形式参数作为被调函数的局部变量处理,即在栈中开辟了内存空间以存放由主调函数放进来的实参的值,从而成为了实参的一个副本。值传递的特点是被调函数对形式参数的任何操作都是作为局部变...原创 2015-10-15 10:07:49 · 513 阅读 · 0 评论 -
C++——int main(int argc, char* argv[])
int main(int argc, char* argv[]) argc是命令行总的参数个数 char* argv[]是一个字符数组,该字符数组的大小为argc argv[0]指向的字符串总是可执行程序的名字,以后的单元指向的字符串依次是用户输入的参数。#include <iostream>using namespace std;int main(int argc...原创 2015-10-15 15:51:55 · 487 阅读 · 0 评论 -
C++——运算符重载
#include<iostream>using namespace std;class Complex1{public: Complex1(){real=0;imag=0;} Complex1(double x,double y){real=x;imag=y;} Complex1 complex_add(Complex1 &d);//普通方法实...原创 2015-10-16 11:23:54 · 541 阅读 · 0 评论 -
C++——模板
一,函数模板//某个函数对所有数据类型都将进行相同的处理时,使用模板#include<iostream>#include<string>using namespace std;template <class T>void swapp(T &a,T &b){ T temp; temp=a; a=b...原创 2015-10-16 11:33:03 · 395 阅读 · 0 评论 -
C++——虚方法 纯虚方法
#include&amp;lt;iostream&amp;gt;#include &amp;lt;string&amp;gt;using namespace std;class Animal{protected: string name;public: Animal(string thename){name=thename;cout&amp;lt;&amp;lt;name&a原创 2015-10-16 23:04:50 · 833 阅读 · 0 评论 -
C++——文件流
文件流有点类似标准输出和标准输入;文件类型可以分为两种:文件流包括文本文件和二进制文件,生活中大量的信息都是用文本文件来保存的,二进制文件保存的只是二进制数据,利用二进制模式,你可以操作图像等文件。ifstream – 从已有的文件读 ofstream – 向文件写内容 fstream - 打开文件供读写一,写文件ofstream#inc...原创 2015-10-26 12:04:40 · 816 阅读 · 0 评论 -
C++——右值引用
在c++中,临时对象不能作为左值,但可以作为常量引用const & ++i = 3; // ok i++ = 3; // error C2106: “=”: 左操作数必须为左值1.新标准为c++带来了一个新的左值类型:带名右值引用(T&& 这是一个左值,只不过她的类型是右值引用,只能绑定右值 );带来了一个新的右值类型:无名右值引用 (std::mo...原创 2018-06-01 11:24:42 · 375 阅读 · 0 评论