原创 C 語言中處理四捨五入

float f = 9.9; int a; //eg1:沒有處理四捨五入 a = f; printf("%d\n",a); // 打印結果爲9,錯誤。C中對於浮點型向整型數據的轉換是直接把小數點後面去掉,不會進行四捨五入,所以這要求程序

原创 輸入結束的符--空白格的那點小事

0:先引入一個關鍵字,空白格就是 空格、tab 、回車 1、scanf getchar gets 等輸入函數,總是把《enter》回車鍵在鍵盤緩衝區中轉換成 換行符號‘\n’   (注意回車符和換行符是兩個符號,這裏只是緩衝區的一個變換

原创 git 使用

1. 首先到 https://github.com/這裏創建一個帳號。   2. 創建Repository,到個人首頁以後,點擊 New repository,如下圖:      3. 添加該代碼庫名稱,描述,其他如下圖:   

原创 Linux 動態庫剖析

原文地址:https://www.ibm.com/developerworks/cn/linux/l-dynamic-libraries/ 庫用於將相似函數打包在一個單元中。然後這些單元就可爲其他開發人員所共享,並因此有了模塊化編程這

原创 opendir

dr-x------ 2 root root  0 11月  6 17:10 . dr-xr-xr-x 9 root root  0 11月  6

原创 關於計算機中數值的表示的那點小事

一、 1、數值在2進制中的表示有3種:原碼、反碼和補碼;這裏我只記第3種,因爲計算機中,數值的表示只用第3種補碼,另外兩種用網友的話就是科學家沒事吃飽了撐的造出來的(只是開個玩笑,根據哲學中存在比有用的原理,相信他們在其他領域一定還是用的

原创 ffmpeg 用 h264庫進行編碼的編譯配置

編譯準備: ffmpeg的編譯 要用到yasm 彙編器,安裝apt-get install yasm 一、編譯X264 1、下載x264的工程代碼,

原创 Linux多線程開發(二):使用C++封裝線程同步操作

互斥量的作用是用來多線程之間互斥排它的訪問共享資源(比如一個讀一個寫等等) 多線程操作還有一個重要問題,不用說你也猜的到了:就是線程同步問題 線程同步的概念就是:多個線程之間相互協作完成某項任務 就是說線程A需要先執行某項操作,執行完後,

原创 Linux多線程開發(一):用C++封裝線程的互斥操作

學過操作系統的人,估計都知道互斥量是個何方神聖,我這裏也就不再狗尾續貂再做解釋了 好,先看Linux下關於互斥量的一些API(所謂封裝,說白了也就是封裝這些API,讓這些API更簡單好用罷了) 一、Linux下互斥量的使用 1、定義一個互

原创 ffmpeg 視頻採集、壓縮、裁剪、合併命令(已測試通過)

1、視頻採集 ffmpeg -f video4linux2 -s 480*272 -r 10 -i /dev/video0 test.asf 2、ffmpeg 視頻壓縮命令  ffmpeg -threads 4 -i test.asf -

原创 ffmpeg 編碼器AVCodecContext 的配置參數

1、先說一些基本的API AVFormatContex * pFormatCtxEnc; AVCodecContext * pCodecCtxEnc; AVStream * video_st; AVOutputFormat * pOut

原创 Linux API -- open 設置操作屬性O_APPEND時的那點小事

一、open int open (const char * pathname , int flags, ..../* 只有當你要創建文件時,才需要填寫這第3個參數,用來指定文件權限 */) ; 問題1、我們都知道,open 的flags參

原创 關於C++ 構造函數的那點小事

先列出來c++中所有的構造函數 1、默認構造函數和帶參數的構造函數 我們暫且稱他們爲“普通構造函數” .eg Test(); or Test(int i, ...); 2、拷貝構造函數Test(const Test & t); 3、類型

原创 面向方法、宏定義、dll庫、面向對象給程序靈活性帶來的好處

從一個網上找的例子說起: 定義了一個ILog接口,用於記錄日誌文件,它有一個對外接口WriteLog用於記錄日誌 這些日誌可以記錄到磁盤上(FileLog)或者數據庫上(DBLog),或者其它的什麼地方;後來,你又發現需要一個StdOut