C/C++学习
sno_guo
蓝松视频编辑SDK, 核心图像算法开发人员. 主要视频图像处理, 图像渲染, 图像纹理处理, 图像算法开发.
展开
-
linux___FILE__文件操作
1,读写文件:#include #include #include #include unsigned char bufferfd[40];void FormatCurrentTimeString(char* pszCurrTime, int nCurrTimeSize){time_t now;time(&now); strftime(pszCurrTi转载 2013-03-12 19:58:47 · 1211 阅读 · 0 评论 -
C/C++ -----------------static----------------------------
#include using namespace std; class base{ public : static int _num;//声明 void set(int a){ _num=a; }}; int base::_num=0;//静态数据成员的真正定义 class derived:public base{ }; main() { base原创 2013-05-21 22:30:21 · 645 阅读 · 0 评论 -
C/C++------------pthread_cleanup_push/pthread_cleanup_pop----------保护机制
算是整理吧, 浏览器的那个网址关闭了,忘记了是那个了,暂时不加转自哪里了,等有时间再加上.vlc中的:一般是用来清理mutex的LOCK,这点很重要!!!!!static inline void vlc_cleanup_lock (void *lock){ vlc_mutex_unlock ((vlc_mutex_t *)lock);}#define原创 2013-05-23 18:11:58 · 1069 阅读 · 0 评论 -
C/C++-------------__sync_fetch_and_add 原子操作------------------
转自:http://www.cnblogs.com/FrankTan/archive/2010/12/11/1903377.htmlGCC 提供的原子操作GCC 提供的原子操作gcc从4.1.2提供了__sync_*系列的built-in函数,用于提供加减和逻辑运算的原子操作。其声明如下:type __sync_fetch_and_a转载 2013-05-24 10:34:29 · 3601 阅读 · 0 评论 -
linux-----------------daemon()函数的使用
Daemon函数的用法转自:http://blog.csdn.net/callmeback/article/details/5884579Daemon函数的用法说明:让一个程序后台运行。原型:[c-sharp] view plaincopy#include int转载 2013-05-25 09:34:14 · 780 阅读 · 0 评论 -
Log图文详解(Log.v,Log.d,Log.i,Log.w,Log.e)!
#define LOG_TAG "libnativebuffer"#define LOGI(...) __android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR,LOG_TAG,__VA_ARGS__)转载 2012-07-15 20:28:00 · 2198 阅读 · 0 评论 -
android______________jni和java的参数传递函数
一些常用函数举例:来自:https://code.google.com/p/native-buffer/source/browse/#include #include #include #include #include #include #include #define LOG_TAG "libnativebuffer"#define LOGI(...)转载 2013-06-03 08:46:56 · 2059 阅读 · 0 评论 -
嵌入式----------内存大小和硬盘大小的代码
获取内存大小和硬盘大小:-------------------Qt版本:QString getMemTotal(){ QString memtotal; QFile m_file; m_file.setFileName("/proc/meminfo"); if(m_file.open(QIODevice::ReadOnly | QIODevi原创 2013-06-14 15:58:04 · 849 阅读 · 0 评论 -
linux------gdb-----调试------------
gdb源码下载http://ftp.gnu.org/gnu/gdb/编译arm-linux-gdb$cd gdb-7.5$./configure –target=arm-linux –prefix=/usr/local/arm/gdb$make ///编译gdbserver$cd gdb/gdbserv转载 2013-06-08 09:20:22 · 857 阅读 · 0 评论 -
C++----------------------------c++继承经典例子
c++继承经典例子zhuanzi:http://blog.csdn.net/zhaori/article/details/1700356 在ubuntu下编译,因没有iostream.h文件,需要把 #include 改成:#include using namespace std;即可。 c++继承经典例子#i转载 2013-05-21 22:17:10 · 1756 阅读 · 0 评论 -
C_C++____________动态库操作________.so_________
1,加载一些动态库:#include #ifndef ANDROID_SYM_S_LOCK# define ANDROID_SYM_S_LOCK "_ZN7android7Surface4lockEPNS0_11SurfaceInfoEb"#endif#ifndef ANDROID_SYM_S_LOCK2# define ANDROID_SYM_S_LOCK2 "_ZN7andro原创 2013-05-02 15:30:26 · 1313 阅读 · 0 评论 -
C/C++____vector___学习
对vector的总结:vector就是一块可以随时变化的连续的内存,方便你在其中存放数据,像c语言中的char buffer[1000];但是比这样更多写功能和方便。/*#include#include#include using namespace std;int main(){ int i = 0, j = 0; vector > Array;转载 2012-08-09 21:40:21 · 563 阅读 · 0 评论 -
VFP---------Condition Codes 4: Floating-Point Comparisons Using VFP
ZZ:http://blogs.arm.com/software-enablement/405-condition-codes-4-floating-point-comparisons-using-vfp/Condition Codes 4: Floating-Point Comparisons Using VFPPosted by Jacob Bramley, 2转载 2013-01-20 11:39:23 · 1564 阅读 · 0 评论 -
NEON-----------------Coding for NEON - Part 1: Load and Stores
ZZ: http://blogs.arm.com/software-enablement/161-coding-for-neon-part-1-load-and-stores/page___gocomments__1/Coding for NEON - Part 1: Load and StoresPosted by ARM Martyn, 6 COMMENTS转载 2013-01-20 11:24:45 · 2039 阅读 · 0 评论 -
NEON-------------Coding for NEON - Part 2: Dealing With Leftovers
ZZ: http://blogs.arm.com/software-enablement/196-coding-for-neon-part-2-dealing-with-leftovers/Coding for NEON - Part 2: Dealing With LeftoversPosted by ARM Martyn, 5 COMMENTS10转载 2013-01-20 11:26:39 · 1358 阅读 · 0 评论 -
NEON----------Coding for NEON - Part 3: Matrix Multiplication
Coding for NEON - Part 3: Matrix MultiplicationPosted by ARM Martyn, LEAVE COMMENT28 June 2010We have seen how to load and store data with NEON, and how to handle the le转载 2013-01-20 11:29:49 · 872 阅读 · 0 评论 -
NEON------------Coding for NEON - Part 4: Shifting Left and Right
ZZ: http://blogs.arm.com/software-enablement/277-coding-for-neon-part-4-shifting-left-and-right/Coding for NEON - Part 4: Shifting Left and RightPosted by ARM Martyn, 8 COMMENTS0转载 2013-01-20 11:32:10 · 1467 阅读 · 0 评论 -
NEON---------Coding for NEON - Part 5: Rearranging Vectors
Coding for NEON - Part 5: Rearranging VectorsPosted by ARM Martyn, 3 COMMENTS13 March 2012This article describes the instructions provided by NEON for rearranging data w转载 2013-01-20 11:35:55 · 1674 阅读 · 0 评论 -
map的 增删改查 操作
整理自网络,也算是原创吧,。。。。#include #include #include using namespace std;int main() ////map 的增删改查,{ map maplist; ///step1-------------------增 ///1.1 用insert函数插入value_type数据,下面举例说明原创 2013-04-23 16:28:39 · 2380 阅读 · 0 评论 -
linux-----man安装
转自:http://www.cppblog.com/codejie/archive/2010/01/18/105957.html记录:在Ubuntu中添加C/C++相关man pages 习惯了Wndows下的MSDN,写代码时,F1键是少不掉的了。跑到Ubuntu上,一直用man,也好用,虽然麻烦点。但现在问题是,自己装的Ubuntu上无法使用'man strc转载 2013-07-07 18:30:40 · 872 阅读 · 0 评论 -
linux------------------00字符串操作------宏----------
-----------把一个变量转换为 字符串。:#define paster( n ) printf( "token" #n " = %d\n", token##n ) int main(){int token9 = 123; paster( 9 ); }------------------原创 2013-07-01 17:37:25 · 738 阅读 · 0 评论 -
android___android_log_print打印函数__源代码
转自:http://www.netmite.com/android/mydroid/system/core/liblog/logd_write.c/* * Copyright (C) 2007 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License");转载 2012-11-03 10:55:41 · 44902 阅读 · 0 评论 -
--------------thread_t ----线程id的理解
这个是温故而知新-------------------#include #include #include #include #include #include void printids(const char *s){pid_t pid;pthread_t tid;pid = getpid();tid = pthread_self();原创 2013-08-11 10:29:15 · 4058 阅读 · 1 评论 -
linux嵌入式qt的屏幕旋转与字体大小问题
zhuanzi :http://blog.sina.com.cn/s/blog_640531380100udhj.html【1、与qt程序显示文字大小有关的两项】export QWS_DISPLAY=LinuxFB:mmWidth200:mmHeight100:0 //输出设备为Linux framebuffer,尺寸定义(尺寸定义与文字大小有直接关系)转载 2013-11-12 19:50:05 · 3261 阅读 · 0 评论 -
-----------qt-----------C++的模板的使用, ---定义一个模块类--------
转自:http://qt-project.org/forums/viewthread/14782If we’re throwing around solutions anyway: you could even create a class template that adds this function to any widget you want, including all stoc转载 2014-01-09 10:44:38 · 1994 阅读 · 0 评论 -
C++-----------STL经典网址
http://www.sgi.com/tech/stl/stl_index.html转载 2013-07-07 18:34:34 · 1120 阅读 · 0 评论 -
C/C++__链表指针__操作
list m_Classlist;list::iterator it = m_Classlist.begin(); //如果是链表的内容是指针的话,这里的it是指向指针的指针for (; it != m_Classlist.end(); it++){if (*it) //故这里用*it表示这个指针,{if ((*it)->chnl){(*it)-chn原创 2012-06-15 17:44:44 · 1286 阅读 · 0 评论 -
linux----------------shell 学习----------------
--------------------------------------一个判断当程序运行中断掉后 自动重启的shell------------------(修改自:http://www.cnblogs.com/khler/archive/2011/01/28/1947016.html)#下面的shell通过一个while-do循环,用ps -ef|grep 检查loader进程是否正转载 2013-07-01 17:11:56 · 713 阅读 · 0 评论 -
环形缓冲区的设计与实现
环形缓冲区的设计与实现分类: C/C++/数据结构/算法 2010-04-23 13:17 1191人阅读 评论(1) 收藏 举报 环形缓冲区是嵌入式系统中十分重要的一种数据结构,比如在一个视频处理的机制中,环形缓冲区就可以理解为数据码流的通道,每一个通道都对应着一个环形缓冲区,这样数据在读取和写入的时候都可以在这个缓冲区里循环进行,程序员可以根据自己需要的数据大小来决定自己使用的缓转载 2012-04-26 13:54:37 · 1397 阅读 · 0 评论 -
linux____打印_____操作
打印当前的文件名和行号 fprintf(stderr,"file %s Line %d:\n", __FILE__, __LINE__);=========================================20130625增加#include #define PRINT_COLOR_RED "\033[0;31m%s\033原创 2012-09-20 10:05:28 · 671 阅读 · 0 评论 -
ffmpeg--------------avcodec----------
注: 这个是我在试验开发中的 只言片语, 只作为自己的临时记忆. void av_register_all(void)>>> avcodec_register_all(); /* hardware accelerators */ >>>> REGISTER_HWACCEL (H263_VAAPI, h263_vaapi); ......原创 2013-07-04 15:59:33 · 1130 阅读 · 0 评论 -
C_C++ _________________this指针----类的理解
#include using namespace std;class subClass{public : void printSubClass() { printf("sub object id is %d\n",this); }};class testClass{public: void printfClsId() { printf(" main pr原创 2013-06-27 09:29:13 · 678 阅读 · 0 评论 -
eclipse-------------快捷键-------------的使用
晚上有点头疼, 就整理下eclipse的各种快捷键, 自己经常使用到的.eclipse经常用到的一些快捷键:1,ctrl+m2,ctrl+o 打开当前类中的所有方法的列表.3,ctrl+e 打开当前已经打开文件的列表,实现文件间的快速切换.4,ctrl+↑↓上下方向键, 类似于鼠标不动的滚动当前文件中内容.5,ctrl+shift+↑↓方向键,原创 2013-07-08 21:23:52 · 912 阅读 · 0 评论 -
JAVA------sort-----------------排序
转自:http://www.mkyong.com/java/java-object-sorting-example-comparable-and-comparator/1. Sort an ArrayTo sort an Array, use the Arrays.sort().String[] fruits = new String[] {"Pineapple","A转载 2013-06-27 21:59:53 · 1042 阅读 · 0 评论 -
linux__查看库中的函数
Linux下动态库查看方法:nm -D libavformat.soLinux下静态库查看方法:ar -t libavformat.aLinux下动态库查看方法:nm -D libavformat.so --[打印信息是:第一列:当前符号的地址;第二列:当前符号的类型(T表示函数在代码段,U没有定义或外部定义,D初始化数据区,U,未初始化数据区);原创 2012-06-30 20:01:33 · 2513 阅读 · 0 评论 -
编程---------------map的一些函数整理---------------
#include #include #include using namespace std;class CTestClass1{public: CTestClass1(string str) { m_str=str; } virtual ~CTestClass1() { cout<<m_str<<" is ~~CTestClass1"<<endl; } st原创 2013-07-01 14:13:27 · 692 阅读 · 0 评论 -
C/C++-----------00queue-------
#include #include #include #include using namespace std;class CTestClass1{public: CTestClass1(string str) { m_str=str; } virtual ~CTestClass1() { cout<<m_str<<" is ~~CTestClass1"<<原创 2013-07-01 18:11:47 · 732 阅读 · 0 评论 -
linux_____makefile_____模板
如果一个代码,用configure来组织程序的,在ubuntu端可以用过./configure ;make ;make install 编译。那么在嵌入式端 则可以通过这样:./configure --host=arm-linux CC=arm-linux-gcc 或者:./configure --host=arm-linux CC=arm-linux-gcc --prefix=/usr/转载 2013-01-26 11:18:53 · 651 阅读 · 0 评论 -
linux---信号量--------sem的使用,可以用到多进程中。
和mutex+cond一样, 有多个函数,不同的是sem可以用到多进程间的同步。基本原理是:在多个线程或多个进程之间维护一个原子计数value,当一个线程执行sem_wait时,先判断是否为这个value是否为0,为0则wait。 另一个线程执行sem_post把value加一,这样如果有sem_wait 的线程则检查到value不再为0,则返回。继续执行。这样就完成了多个线程或多个进程之间的原创 2013-06-28 22:11:39 · 4303 阅读 · 0 评论 -
linux__获取文件信息___操作
#include #include #include #include #include #include int main(){ int size; char* filepath = "./a.out"; struct stat info; stat(filepath, &info); size = info.st_size; printf(原创 2012-12-21 14:25:26 · 645 阅读 · 0 评论