Time of Update: 2017-01-18
本文執行個體為大家分享了C++計算每個字元出現的次數的實現代碼,供大家參考,具體內容如下#include <iostream>//#include <cstdlib>#include <ctime>using namespace std; const int NUMBER_OF_LETTERS = 26;const int NUMBER_OF_RANDOM_LETTERS = 100;void createArray(char []);void
Time of Update: 2017-01-18
邏輯運算子邏輯運算子,用於對內含項目關聯性運算子的運算式進行組合,形成新的運算式;結果也是只有真或假兩種情況,結果值用 BOOL 類型變數儲存。 運算子 解釋 結合方式 () [] -> . 括弧(函數等),數組,兩種結構成員訪問 由左向右 ! ~ ++ -- + - * & (類型) sizeof
Time of Update: 2017-01-18
if 語句用 if 語句可以構成分支結構,它根據給的條件進行判定,以決定執行哪個分支程式段。C 語言的 if 語句有三種基本形式第一種形式:if(條件運算式) { 語句1;}if(條件運算式) { 語句1;}這種形式運行順序為:當條件運算式為真,執行語句1,否則,直接跳過語句1,執行後面的語句。例子1:BOOL result = YES;if(result){ printf("result is true\n");}BOOL result = YES;if(result){
Time of Update: 2017-01-18
趕集網校招就採用了螺旋輸出矩陣作為程式題,要求將矩陣螺旋輸出如:圖中6*6矩陣線條所示為輸出順序,如果輸出正確的話應該輸出1~36有序數字。 我想的是這麼做的:#include <stdio.h> //#define LEN 1 //#define LEN 2 //#define LEN 3 #define LEN 4 void printClock(int a[][LEN]){//輸出函數 int t; int i = 0, m = 0; int j =
Time of Update: 2017-01-18
指標函數一般是指返回指標的函數;#include <stdio.h> int* fun(int *a) { return a; } int main(int argc, char **argv) { int a = 3; printf("%d", *(fun(&a))); return 0; } 函數指標是表示指向函數開始地址的指標:首先要瞭解函數的調用過程:#include <stdio.h> int fun(int i) {
Time of Update: 2017-01-18
使用lzma SDK對7z檔案簡單解壓縮有時候我們只需要單純對lzma演算法壓縮的7z檔案進行解壓,有時需要在嵌入式裝置上解壓,使用p7zip雖然支援多種格式,但是不容易裁剪,使用lzma SDK是首選:可以在這裡找到各種版本:http://zh.sourceforge.jp/projects/sfnet_sevenzip/releases/我下載了4.65版本,這個對檔案名稱編碼支援沒有9.20的好,中文可能有問題,但是我的需求不需要支援中文檔案名稱,所以足夠用了。解壓後先看一下7z這個工程,
Time of Update: 2017-01-18
不使用其他變數交換兩個整型的值:#include <stdio.h> void main(){ int a = 3; int b = 4; a = a ^ b;//使用異或交換 b = b ^ a; a = a ^ b; printf("%d, %d\n", a, b); a = a - b;//使用加減交換 b = a + b; a = b - a; printf("%d, %d\n", a, b); a ^= b ^= a
Time of Update: 2017-01-18
字元數組倒序 #include <stdio.h> void daoxu(char str[]){ int i; char temp; for(i = 0; i < strlen(str) / 2 ; i ++){ temp = str[i]; str[i] = str[strlen(str) - i-1]; str[strlen(str) - i-1] = temp; } }
Time of Update: 2017-01-18
1,為什麼要用到鏈表數組作為存放同質資料的集合,給我們在程式設計時帶來很多的方便,增加了靈活性。但數組也同樣存在一些弊病。如數組的大小在定義時要事先規定,不能在程式中進行調整,這樣一來,在程式設計中針對不同問題有時需要3 0個大小的數組,有時需要5
Time of Update: 2017-01-18
在將各種類型的資料構造成字串時,sprintf 的強大功能很少會讓你失望。由於sprintf 跟printf 在用法上幾乎一樣,只是列印的目的地不同而已,前者列印到字串中,後者則直接在命令列上輸出。這也導致sprintf 比printf 有用得多。sprintf 是個變參函數,定義如下:int sprintf( char *buffer, const char *format [, argument] ... );除了前兩個參數類型固定外,後面可以接任意多個參數。而它的精華,顯然就在第二個參數:
Time of Update: 2017-01-18
sprintf 是個變參函數,使用時經常出問題,而且只要出問題通常就是能導致程式崩潰的記憶體訪問錯誤。下面對sprintf 常出錯誤問題進行簡單的總結:1、緩衝區溢位:第一個參數的長度太短了,解決辦法:將第一個參數的長度擴大。列印字串時,盡量使用”%.ns”的形式指定最大字元數char buf[5];sprintf(buf, ":%d", 3246);printf("buf is %s\n", buf);將buf修改為char buf[6]2、忘記第一個參數:原因用printf
Time of Update: 2017-01-18
浮點數在記憶體中的儲存機制和整型數不同,其有舍入誤差,在電腦中用近似表示任意某個實數。具體的說,這個實數由一個整數或定點數(即尾數)乘以某個基數(電腦中通常是2)的整數次冪得到,這種表示方法類似於基數為10的科學記號標記法。所以浮點數在運算過程中通常伴隨著因為無法精確表示而進行的近似或舍入。但是這種設計的好處是可以在固定的長度上儲存更大範圍的數。1、將字串轉換為float、double過程存在精度損失,只是float、double各自損失的精度不相同而已std::string str="8.2"
Time of Update: 2017-01-18
在日常編碼過程中會遇見各種編譯錯誤,本文對常見的編譯錯誤進行分析總結。(基本的編譯錯誤在這裡不列舉,後續後持續更新)1、error c101008a解決方案該錯誤出現在項目升級過程中會出現,比如說項目從vs2008升級到vs2010.解決辦法:在項目上點右鍵,清理(Clean),重新編譯,問題解決2、error C2252解決方案該錯誤主要在項目從vs2008升級到vs2010出先。error C2252: an explicit instantiation of a template can
Time of Update: 2017-01-18
本文主要從log4cxx層級、layout、格式化、命名規則、Filter幾個方面介紹。一、log4cxx命名規則Logger由一個String類的名字識別,logger的名字是大小寫敏感的,且名字之間具有繼承的關係,子名有父名作為首碼,用點號.分隔。如:x.y是x.y.z的父親。根logger (root logger)是所有logger的祖先, 它具有如下屬性:1) 它總是存在的;2) 它不可以通過名字獲得。通過調用public static Logger
Time of Update: 2017-01-18
在日常開發過程中經常會使用到時間類函數的統計,其中擷取1970年至今的UTC時間是比較常使用的,但是在windows下沒有直接能夠精確到微妙級的函數可用。本文提供方法正好可以解決這類需求問題。下面先給出C++實現代碼:複製代碼 代碼如下:#ifndef UTC_TIME_STAMP_H_#define UTC_TIME_STAMP_H_#include <windows.h>#include <sys/timeb.h>#include <time.h>
Time of Update: 2017-01-18
在實際計算中可能會出現浮點型的無效資料,格式化輸出到檔案中內容為1.79769e+308,輸出到介面就是很大一串資料。這兩種方式無論哪種在閱讀和尋找時就不是很方便。在開發中遇見浮點型資料無效值得判定。無效值定義如下:#define InvalidDouble *(double*)("\xff\xff\xff\xff\xff\xff\xef\x7f")double price;.........(計算步驟省掉)price=GetPrice();
Time of Update: 2017-01-18
@echo off title=HYTradingGateway自動化編譯打包工具mode con cols=80 lines=40echo -------------------------------------------------------------echo
Time of Update: 2017-01-18
不同目錄下的多個二進位執行檔案的批處理代碼 @echo offpushd "G:\apache-activemq-5.5.0-bin\apache-activemq-5.5.0\bin\"start /min "" G:\apache-activemq-5.5.0-bin\apache-activemq-5.5.0\bin\activemq.batpopdping 127.0.0.1 -n 5 pushd
Time of Update: 2017-01-18
前言:本文書寫的格式與其它不相同。本文題目說是關於C++ API的思考,其實也不僅僅是C++,對於其它語言同樣適用。API實際是指Application Programming
Time of Update: 2017-01-18
在實際計算中可能會出現浮點型的無效資料,格式化輸出到檔案中內容為1.79769e+308,輸出到介面就是很大一串資料。這兩種方式無論哪種在閱讀和尋找時就不是很方便。無效值定義如下:#define InvalidDouble *(double*)("\xff\xff\xff\xff\xff\xff\xef\x7f")double price;.........(計算步驟省掉)price=GetPrice();