原创 公交餘額查詢(深圳通)

關於公交餘額查詢 現在有一些公交卡支持網餘額查詢了,雖然支持的不多,但是不得不說,深圳通的餘額還是很好查的。因爲是匿名的公交卡,所以輸入用戶名、身份證之類的事沒用的,需要輸入的只是公交卡的號碼即可。 深圳通的餘額查詢網站是:深圳通網上查詢

原创 微信紅包算法代碼實現

微信紅包算法思考學習研究 閒來無事,研究下微信的紅包算法,也思考下可以實現的其他算法,略作記錄。 微信紅包的隨機算法不是在發紅包時就算好的,而是用戶在領取紅包時實時計算出客戶領取紅包金額,因此紅包的算法重點在於如何公平地算出領取

原创 libco協程示例-多協程任務代碼(類似多線程)

libco協程示例-多協程任務代碼(類似多線程) 簡介 在我們平常的工作及測試過程中,涉及到多個任務並行工作時我們一般會考慮使用多線程方案,多線程的方案方便我們在同一個程序中並行執行多個任務,不僅可以一心多用,而且還可以有效地提升

原创 協程庫libco學習使用入門示例

簡介 libco是微信後臺大規模使用的c/c++協程庫,2013年至今穩定運行在微信後臺的數萬臺機器上。 libco通過僅有的幾個函數接口 co_create/co_resume/co_yield 再配合 co_poll,可以支持

原创 libco源碼學習解讀

libco源碼學習解讀 簡介 順着上一篇文章示例,這裏對文章中所涉及的函數及數據類型逐一進行展開分析,以期學習理解libco的實現原理,幫助我們加深對協程的理解,並幫助我們更加有效地使用libco協程庫並排查問題。 創建協程co_

原创 C++開源庫之Curl

關於Curl庫 curl 是一個利用URL語法在命令行方式下工作的文件傳輸工具。它支持很多協議:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。curl不但提供了一個可

原创 FAAC源碼分析之faacEncEncode

FAAC編碼代碼流程圖 通用的AAC編碼系統框圖(偷來的圖) 對比可以發現,其實FAAC的編碼和一般的AAC編碼大致一致,主要包括心理聲學模型處理部分和量化處理兩部分,還包括一些優化處理的過程。實現的源碼+註釋:int FAACAPI

原创 C++新語法特性

0. 背景 最近在學習過程中,不小心就發現一些不認識的C++語法和技巧,一查才發現我的認知已落後許久,隨着C++的發展,很多新奇的高級編程語言技巧都已經被C++吸納,而我的認知還一直在c++98停滯不前,慚愧。本章收集了一些比較常

原创 Visual Studio 2019 + WSL + Linux(Ubuntu)程序配置開發

安裝Visual Studio 2019 在安裝Visual Studio 2019時,需要勾選Linux開發環境選項,即勾選“使用C++的Linux開發”工具集,如下圖所示: 創建Linux類型項目 啓動已經安裝好的Visua

原创 訪問者模式(Visitor Pattern)

定義 什麼是訪問者呢?就拿身邊的一個例子來看看吧。你有一棟房子,房子裏面有很多管道、電路之類的東西,很顯然,這些東西你不懂,是別人幫你弄好的。有一天,你家的管道出問題了,於是你需要解決這個問題,但是你不懂,所以你需要找專業人員(管道修理工

原创 GDB調試Core文件

關於Core文件 Linux程序在運行過程中可能會出現奔潰的現象,此時啓用Core文件可以記錄程序的奔潰現場,方便事後查找問題。 準備工作 啓用core文件 默認情況下的core文件是不啓用的,即程序奔潰不會生成奔潰core文件,所以

原创 faac源碼分析之faacEncOpen

faacEncOpen的代碼流程圖如下所示: 主要包括初始化解碼器句柄以及使用的默認參數,最後的是各個功能模塊的初始化,主要是分配內存,初始化一些係數表。 faacEncHandle FAACAPI faacEncOpen(unsign

原创 faac源碼分析之解碼參數配置

FAAC定義了一個結構體用來定義解碼器的工作解碼參數,該結構體的定義如下所示:typedef struct faacEncConfiguration

原创 從源代碼到輸出

本文研究的是一個經典的hello.c程序從產生到執行輸出的過程。源代碼是:#include <stdio.h> int main() { printf("Hello, world.\n"); return 0; } 程序編譯執行過程程

原创 Google地址

Google被封了,各種上不去,Google賬戶也沒用了,真是悲傷。據傳是因爲IP地址被封了,所以找些沒封的IP地址還是可以用Google的,下面是本人收集的一些地址,可用。 64.233.167.165 64.233.167.1