Time of Update: 2018-12-03
管道一般用與父子進程之間通訊,下面是一個簡單的父子進程通訊案例: #include <unistd.h>#include <stdio.h>int main(){int fd[2];//管道入口fd[0]為讀,fd[1]為寫入口char r_buf[100];char w_buf[20]= "hello word!";pid_t pid;if(pipe(fd) < 0)//建立管道{printf("pipe error!\n");exit(1);}if((pid
Time of Update: 2018-12-03
// 演算法.cpp : 定義控制台應用程式的進入點。//#include "stdafx.h"#include <iostream>#include <ctime>using namespace std;void QuickSort(int e[], int first, int end);int _tmain(int argc, _TCHAR* argv[]){srand(unsigned(time(NULL)));//set 種子int t_nArray[10];/
Time of Update: 2018-12-03
轉自 : http://www.cppblog.com/michaelgao/archive/2008/10/09/63571.html 為什麼C++編譯器不能支援對模板的分離式編譯 劉未鵬(pongba) /文 首先,C++標準中提到,一個編譯單元[translation unit]是指一個.cpp檔案以及它所include的所有.h檔案,.h檔案裡的代碼將會被擴充到包含它的.cpp檔案裡,然後編譯器編譯該.cpp 檔案為一個.obj檔案,後者擁有PE[Portable Executable,
Time of Update: 2018-12-03
今天做到模版的問題,無法分離定義,在網上找到一些資料,無意間接觸到了c++程式的編譯過程。經學習理解後總結如下: 對於c++工程中含有很多檔案,其中.cpp和.h我們比較熟悉。coder將程式寫在這兩個檔案中,具體的編譯和運行由編譯器自己去完成。 我們就會提出問題,編譯器是如何進行編譯的呢。 首先,先行編譯,就是將一些宏進行替代以及將.h展開到.cpp中。
Time of Update: 2018-12-03
一段關於定時器的程式 // ThunderFind.cpp : 定義控制台應用程式的進入點。//#include "stdafx.h"#include <iostream>#include <stdio.h> #include "map.h"#include <windows.h>using namespace std;map m;//m為map類的對象聲明為全域的才能使用定時器void CALLBACK addThunderTenMin(HWND
Time of Update: 2018-12-03
c++中string可以通過string.length()來獲得string的長度,當對與一個數組來說就不是這麼容易了。如一個int型的數組:int a[] = {1,2,3,5,6,9};如何獲得呢?可以通過sizeof的特殊用法,都知道sizeof()是獲得所佔的空間的大小,所以可以:int length = sizeof(a)/sizeof(int);來得到a數組的元素個數。1.vector
Time of Update: 2018-12-03
[序言]很久不寫C/C++技術貼了,算一下自己用C++也有7~8年了,雖然現在用Delphi比較多,但是對C++還是有一份熱情.前段時間在CSDN看到一個文章,讓我感到非常失落,
Time of Update: 2018-12-03
2-1: 將 pad = 1 改為 pad = 0;2-2: 改為rows = pad * 2 + 3 + 2;c == 1 + pad+ 1;則頂部底部框與字串空格加1。2-3: pad 由使用者輸入。pad值:控制邊框與字串之間的空格數。rows值: 控制底邊框和字串之間的空格數。c == 1 + pad; 右值:控制頂邊框和字串之間的空格數。cols值: 控制右邊框和字串之間的空格數。r == 1 + pad;右值:控制左邊框和字串之間的空格數。=====
Time of Update: 2018-12-03
本站文章均為 李華明Himi 原創,轉載務必在明顯處註明:轉載自【黑米GameDev街區】 原文連結: http://www.himigame.com/game-detail/1035.html ☞ 點擊訂閱 ☜ 本部落格最新動向!及時將最新博文通知您!今天備忘幾個童鞋們可能會遇到的問題:1. 關於Cocos2dx v1.x版本運行在iphone與Android平台出現圖片變白塊,尺寸一樣。圖片純白問題。之前出現此問題原因如下: 1.1
Time of Update: 2018-12-03
本站文章均為 李華明Himi 原創,轉載務必在明顯處註明:轉載自【黑米GameDev街區】 原文連結: http://www.himigame.com/iphone-cocos2dx/844.html ☞ 點擊訂閱 ☜ 本部落格最新動向!及時將最新博文通知您!其實對於此篇算是對於這段時間網路研究的一個總結。對於手遊網路通訊的互動,一般情況下,Socket長串連直接使用Mina架構即可,對於Http短串連使用Servlet
Time of Update: 2018-12-03
// 在 C++ 裡把其它類型轉換成字串時最好是用純 C++ 的機制: stringstream 類。// ( http://www.parashift.com/c++-faq-lite/misc-technical-issues.html#faq-39.1)#include <iostream>#include <sstream>using namespace std;void main( ) { int i = 100; stringstream ss;
Time of Update: 2018-12-03
宏定義中的井號1)# 只在有參數的定義時用到,為把參數產開並轉化成字串即用""引起來。裡面的空格分割全部改為一個,並且會自動添加逸出字元'\'2)##可以用於有無參數都行。它作用就是把##前後連個東西連起來形成新的標示符。3)#@和#類似,只不過是用''引起來。考慮下面的宏#define stringer( x ) printf( #x "\n" )stringer( In quotes in the printf function call );stringer( "In quotes
Time of Update: 2018-12-03
gcc source program -g gdb file -o executable filegdb gdb filestartnext(n)step(s)進入函數內部bt(backtrace)查看函數調用的棧幀i(info) ***p variant 列印變數的值set var variant_define=***display variant 設定顯示某個變數的值,每進行一布都顯示b(breakpoint) num 設定斷點i breakpoints 查看斷點delete
Time of Update: 2018-12-03
在C語言中偶爾會遇到如下面的語句:#define paster( n ) printf( "token" #n " = %d", token##n )首先說調用paster(9)的結果為token9=9(假設定義了 int token9=9)。##串連符號由兩個井號組成,其功能是在帶參數的宏定義中將兩個子串(token)聯結起來,從而形成一個新的子串。但它不可以是第一個或者最後一個子串。所謂的子串
Time of Update: 2018-12-03
首先說個最特殊的指標 void×,這個是當初為了指標轉化的方便,設立的一個萬能指標。任何指標都能與之轉化。看兩個定義:typedef int ×t; t a[10];typedef int t[10] ; t *a;首行先定義了一個整型指標類型,然後在定義了一個整型數組指標類型;後面一行首先定義了一個整型數組,然後定義了一個指向整型數組的指標。總結下兩行代碼,分別用一句代替就是int* a[10]和
Time of Update: 2018-12-03
#include <iostream>using namespace std;template <typename T> void InsertSort( T* arr, int n ) { T x; int i, j; for ( i = 1; i < n; i++ ) { x = *(arr + i); for ( j = i - 1; j >= 0; j--) {
Time of Update: 2018-12-03
#include <iostream>using namespace std;template <typename T> void Merge( T* arr, int low, int mid, int high ){ int i, j, k; i = low; j = mid + 1; k = 0; T* tmp = new T[high - low + 1]; while( i <= mid && j
Time of Update: 2018-12-03
在程式設計相關領域,堆(Heap)的概念主要涉及到兩個方面:一種資料結構,邏輯上是一顆完全二叉樹,儲存上是一個數組對象(二元堆積)。垃圾收集儲存區,是軟體系統可以編程的記憶體地區。本文所說的堆,指的是前者。堆排序的時間複雜度是O(nlgN),與快速排序達到相同的時間複雜度。但是在實際應用中,我們往往採用快速排序而不是堆排序。這是因為快速排序的一個好的實現,往往比堆排序具有更好的表現。堆排序的主要用途,是在形成和處理優先順序隊列方面。另外,如果計算要求是類優先順序隊列(比如,只要返回最大或者最小元
Time of Update: 2018-12-03
template<typename T> void Swap(T& a, T& b){T c = a;a = b;b = c;}template<typename T>void SelectionSort(T* arr, int n) //選擇排序{for(int i = 0; i <= n - 2; i++){int min = i;for (int j = i + 1; j <= n - 1; j++){if (arr[j] <
Time of Update: 2018-12-03
經上次一天打了幾千行代碼後 我這兩天實在是打不動代碼了 於是就開啟C#入門經典看看 發現和我一年半前自學C#時的感覺完全不同 比如吧 上次看集合 就模糊得很 那幾個介面看得稀裡糊塗的 哪幾個實現了哪幾個介面啥的 完全不知所云 現在看看 感覺原來是這回事啊 有種恍然大悟的感覺 話說我第一次接觸C# 還是在小學六年級時 那時C#貌似還是試用版 咱用它寫了個簡易的計算機 是winform的 算是偶人生的第一個程式吧 可惜初中做了兩三個靜態網站後 我就墮落了 後面就完全沒有學