Time of Update: 2018-07-31
1、適用於C++項目,適用於Windows和Linux平台,依賴STL標準庫。 2、用於C++讀取INI檔案,寫入INI檔案,以及尋找相應索引值對的快速控制項目。 3、在項目中需要此功能時,只需要引入兩個檔案,即:INIParser.h和INIParser.cpp。 4、main.c檔案有常式,同時附帶makefile,以及測試使用的conf.ini和產生的test.ini檔案。 INIParser.h
Time of Update: 2018-07-31
此文收集C++讀取CPU序號的相關資料 1、WMIC命令 以管理員方式開啟cmd.exe, C:\Windows\System32>wmic cpu get processorid ProcessorId BFEBFBFF****06E3 BF開頭的就是CPU的ID號,長度【16】,當前處理器型號為【INTEL CORE i5】。 -------------------------分割線-------------------------
Time of Update: 2018-07-31
在C標準中,有這樣的規定:在“exp1 && exp2” 中如果exp1為false,則不再計算exp2的值 在“exp1 ¦ ¦ exp2” 中如果exp1為true,則不再計算exp2的值 這種機制被稱為”邏輯短路“,一是為了最佳化,更重要的是為了提高代碼的可移植性,避免產生二義性但並不是所有的實現都支援這種機制比如如下的C代碼:view plaincopy to clipboardprint?void cond(int a, int
Time of Update: 2018-07-31
今天用C++實現了下兩個棧類比一個隊列和兩個隊列類比一個棧!代碼可能有很多漏洞,如果讀者發現問題, 可以及時反饋,非常感謝。。。 代碼如下: #include <iostream>#include <stdlib.h>#include <stack>#include <queue>using
Time of Update: 2018-07-31
c語言實現二叉樹及前中後序遍曆(採用遞迴遍曆方式) #include<stdio.h>#include<stdlib.h>#include<string.h>//定義二叉樹節點typedef struct BTNode{char data;struct BTNode *rchild,*lchild;}BTNode,*BTtree;BTtree createBTNode(BTtree ptr, char value, char child){//
Time of Update: 2018-07-31
DateTime dt = DateTime.Now; //取目前時間 long lt1 = DateTime.Now.ToFileTime();//取目前時間 for(int i = 0;i < 100000; i++) { } long lt2 = DateTime.Now.ToFileTime(); lt2 = lt2 - lt1; label1.Text = lt2.ToString() + "微秒";
Time of Update: 2018-07-31
優先順序 操作符 描述 例子 結合性 1 () [] -> . :: ++ -- 調節優先順序的括弧操作符 數組下標訪問操作符 通過指向對象的指標訪問成員的操作符 通過對象本身訪問成員的操作符 範圍操作符 後置自增操作符 後置自減操作符 (a + b) / 4; array[4] = 2; ptr->age = 34; obj.age = 34; Class::age = 2;
Time of Update: 2018-07-31
GCC編譯器簡介: 一、基本知識瞭解 GCC是由gun之父Stallman所開發的linux下的編譯器。全程為GNU C Complier (GNU c語言編譯器)。這是一種早期的說法,早期的時候,它只是用來編譯我們的C 語言,之後可以多個我們的多門語言都可以進行編譯。例如, C,C++,JAVA,ObjectC等等。 GCC是可以在多種硬體平台上編譯出可執行程式的超級編譯器,
Time of Update: 2018-07-31
本文轉載自:原文地址 感謝分享 1、首先,講下 “堆 heap” 和 “棧 stack” 的區別: 一個由 c/c++編譯過的程式佔用的記憶體分為一下幾個部分 (1)、棧區 stack :由編譯器自動分配釋放, 存放函數的參數值,局部變數的值等。 這個棧的操作方式類似於資料結構中的棧。 (2)、堆區 heap
Time of Update: 2018-07-31
Dictionary<int, tk2dEffect>.Enumerator enumerator = this.mMap.GetEnumerator(); while (enumerator.MoveNext()) { enumerator.Current.Value.Update(deltaTime * timeScale); }enumerator.Dispose(); mMap為Dictionary
Time of Update: 2018-07-31
之前在leetcode中進行string和int的轉化時使用過istringstream,現在大致總結一下用法和測試案例。 介紹:C++引入了ostringstream、istringstream、stringstream這三個類,要使用他們建立對象就必須包含sstream.h標頭檔。 istringstream類用於執行C++風格的串流的輸入操作。 ostringstream類用於執行C風格的串流的輸出操作。
Time of Update: 2018-07-31
C學習網:連結->C學習網 C訓練網:連結->C訓練網 資料類型轉換就是將資料(變數、運算式的結果)從一種類型轉換到另一種類型。例如,為了儲存小數你可以將int類型的變數轉換為double類型。資料類型轉換的一般格式為: (type_name) expression type_name 為要轉換到的資料類型, expression 為運算式。例如: (float) a; //把a轉換為實型 (
Time of Update: 2018-07-31
堆: 堆是具有下列性質的完全二叉樹:每個結點的值都大於或等於其左右孩子結點的值,稱為大頂堆;或者每個結點的值都小於等於其左右孩子結點的值,稱為小頂堆! 堆排序: 堆排序演算法就是利用堆(小頂堆或者大頂堆)進行排序的方法。 將待排序的序列構造成一個大頂堆,此時整個序列的最大值就是根節點。將它移走(跟堆的最後一個元素交換,此時末尾元素就是最大值),然後將剩餘的n-1個序列重新構造成一個堆,這樣就會得到n個元素中的次小值。如此反覆執行,便能得到一個有序序列了。
Time of Update: 2018-07-31
到目前為止,我所知道的堆有兩種,一是記憶體的一種,常見的用途就是動態記憶體分配了(在c/c++中就是這樣),另一種是這裡所要論述的一種資料結構。 一、堆 資料結構中的堆又叫二元堆積,顧名思義,我們可以把它看成一顆完全二叉樹,每個元素最多有2個孩子,分別看做左孩子和右孩子。根據元素和它的孩子的關係,堆又可以分為最大堆和最小堆。最大堆的性質是父母的值不小於左右(如果都有)的值,相應地,最小堆就是父母的值不大於孩子的值。
Time of Update: 2018-07-31
windows C/C++移植linux(2) -載入動態共用程式庫的不同 系統動態共用程式庫簡介 靜態庫一個明顯的缺點就是,當系統同時運行很多應用程式,並且應用程式都使用來自同一個函數庫的函數,那麼每一個應用程式都會存在這個函數的多個副本。對於頻繁的調用的函數,將會消耗大量的記憶體和磁碟空間。在linux系統中,每一個程式員用到的靜態庫至少1M以上,如果機器上運行100個這樣的程式,那就佔據100M以上記憶體,磁碟中應用程式假設有2000個,就要接近浪費2G
Time of Update: 2018-07-31
簡介: restrict是c99標準引入的,它只可以用於限定和約束指標,並表明指標是訪問一個資料對象的唯一且初始的方式.即它告訴編譯器,所有修改該指標所指向記憶體中內容的操作都必須通過該指標來修改,而不能通過其它途徑(其它變數或指標)來修改;這樣做的好處是,能協助編譯器進行更好的最佳化代碼,產生更有效率的彙編代碼.如 int *restrict ptr, ptr 指向的記憶體單元只能被 ptr 訪問到,任何同樣指向這個記憶體單元的其他指標都是未定義的,直白點就是無效指標。restrict
Time of Update: 2018-07-31
今天在寫poj上的一道題時,提交之後顯示代碼運行逾時,查了一下網上都說因為測試資料量大,普通迴圈尋找很容易逾時,用優先隊列能解決問題,有時題目裡設計到的狀態資訊比較複雜,要用一個類來維護,類的重載運算子自從上學期學過之後我就忘光了,於是現在寫一篇部落格好好記錄一下: C++中類的重載運算子 我們知道int可以比較,類和類之間只要通過重載運算子,也可以通過 >, <等方式來比較大小。 一般重載運算子有兩種方式,我直接上代碼,代碼裡面都有詳細注釋:
Time of Update: 2018-07-31
#include <iostream>#include <string>#include <string.h>#include <stdlib.h>using namespace std;int main(){ //find函數傳回型別 size_type string s("=1234=abcd=AMDE"); string flag; string::size_type position;//方式一//find
Time of Update: 2018-07-31
1)建立MFC ActiveX Control項目。“控制項設定”環節,“建立的控制項基於”項選擇STATIC,勾選“可見時啟用”項、“無閃爍啟用”項,其餘項實際根據需要勾選。 2)預設情況下,嚮導建立的項目是使用共用MFC DLL的,此時必須確保目標機器已經安裝MFC DLL,否則ActiveX控制項運行失敗。
Time of Update: 2018-07-31
priority_queue 對於基本類型的使用方法相對簡單。他的模板聲明帶有三個參數,priority_queue<Type, Container, Functional> Type 為資料類型, Container 為儲存資料的容器,Functional 為元素比較方式。 Container 必須是用數組實現的容器,比如 vector, deque 但不能用 list. STL裡面容器預設用的是 vector. 比較方式預設用 operator< ,