Time of Update: 2018-07-29
什麼是位元運算 位元運算符按二進位進行運算,這些運算子只能用於整數類型的操作。如:char,short,int,long 通過位元運算符來擷取高位值和低位值 int a=0x1234; int high,low; high = (a>>8) &0x00ff; low = a & 0x00ff; 左移運算子和右移運算子(<<和>>)
Time of Update: 2018-07-29
2008年07月28日 22:22:02 關於嵌入開發中ARM的C代碼最佳化 下面是網路上收集關於ARM的C代碼最佳化方法,在嵌入開發中應該有用: [聲明:以下方法非本人發現和總結,均為有心之人無私貢獻,謝謝他們的勞動與分享。] ======================================================= C資料類型 1.
Time of Update: 2018-07-29
fopen 函數原型 FILE * fopen(const char *path,cost char *mode) 作用:開啟一個檔案,返回指向該檔案的指標 參數說明:第一個參數為欲開啟檔案的檔案路徑及檔案名稱,第二個參數表示對檔案的開啟檔案 註:mode有以下值: r:唯讀方式開啟,檔案必須存在 r+:可讀寫,必須存在 rb+:開啟二進位檔案,可以讀寫 rt+:開啟文字檔,可讀寫
Time of Update: 2018-07-29
#include<stdio.h>#include<stdlib.h>#define N sizeof(stacknode)//結點所佔位元組數 N//定義結構體typedef int datatype;typedef struct stacknode{datatype data;struct stacknode *next;}stacknode;//定義棧頂typedef struct {stacknode *top;int count;//計數用}linkstack;
Time of Update: 2018-07-29
本文的cl指的是Visual studio 2010中的的C++語言編譯器,g++指的是g++ 4.9編譯器。getline在cl中指的是擷取的一行中沒帶”\n”;而g++中的getline指的是擷取的一行中帶”\n”。下面詳述我為什麼注意到這個問題及測試不同平台的代碼。 1 問題產生 我按照書《C++ Primer》1中11.3.6節中a word transformation map程式時發現運行結果不對,我採用的是g++ 4.9.2編譯器。代碼如下: // A word
Time of Update: 2018-07-29
聲明: 1、本博文主要整理自《C++ Primer》和《STL源碼剖析》這兩本經典書籍。同時,也參考了網路中不少優秀部落格,對這些部落格的作者表示感謝。 2、由於博主能力有限,對於一些容器的用法可能尚未進行深入研究。因此,本博文若有錯誤和不足之處,歡迎大家批評指正。 3、本博文僅作學術交流只用,無任何其他用途。 言歸正傳,下面開始介紹C++中的STL容器。 1、容器的概念 Standard Template Library,標準模板庫。
Time of Update: 2018-07-29
C++類中各種不同類型成員根據是否static 、是否const類型的初始化方法不盡相同,寫代碼時經常搞亂,網上搜了一下資料,全部總結一下。一、例子 -----------------Test.h----------------------------#pragma onceclass Test{private : int var1;// int var11= 4; 錯誤的初始化方法 const int var2 ;// const int
Time of Update: 2018-07-29
計算三角形面積 時間限制: 1000 ms 記憶體限制: 65536 KB 提交數: 1813 通過數: 622 【題目描述】 平面上有一個三角形,它的三個頂點座標分別為(x1, y1), (x2, y2), (x3, y3),那麼請問這個三角形的面積是多少,精確到小數點後兩位。 【輸入】
Time of Update: 2018-07-29
pthread_exit()函數可以直接線上程函數內部調用結束這個線程。 開始還想初始化一個pthread_t thread_fd[MAX]數組來儲存開啟的線程,然後用一個棧儲存那些未分配的數組元素(thread_fd[index]=0)的index, 伺服器端: #include<stdlib.h> 8 #include<pthread.h> 9 #include<sys/socket.h> 10
Time of Update: 2018-07-29
硬體設計師最常見的工作內容是通過寫代碼來測試硬體。這10個C語言技巧(C語言仍然是常見的選擇)可以協助設計師避免因基礎性錯誤而導致某些缺陷的產生並造成維護方面的困擾。
Time of Update: 2018-07-29
利用C++實現外掛程式系統 外掛程式機制能夠方便地擴充已有應用程式的功能。用C++實現外掛程式機制的基本思路是:應用程式提供介面,由使用者或第三方實現這些介面,並編譯出相應的動態連結程式庫(即外掛程式);將所有外掛程式放到某個特定目錄,應用程式運行時會自動搜尋該目錄,並動態載入目錄中的外掛程式。 應用程式提供介面 為了實現功能擴充,應用程式必須向外掛程式提供介面。在base.h中定義一個抽象類別Base作為介面: #ifndef BASE_H_#define
Time of Update: 2018-07-29
//字串的拷貝 char* Strcpy(char* strDest, const char* strSrc) { if(strDest== NULL || strSrc == NULL) { returnNULL; } if(strDest== strSrc) {
Time of Update: 2018-07-29
C++ Code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Time of Update: 2018-07-29
c\c++中比較兩個字串或string對象是否相等 在寫程式的過程中,經常會遇到要比較兩個字串是否相等的情況。如果要比較的對象是char*字串,則利用 int strcmp(const char* s1,const char* s2) 當s1<s2時,返回為負數; 當s1==s2
Time of Update: 2018-07-29
相信很多人都玩過2048,一個簡單又有趣的數字遊戲,曾看到許多人在地鐵上玩來玩去的,感覺挺有意思,便下載個玩了一陣子,不過從來沒有突破“2048”,看到有些小夥伴已經玩到“8192”了,確實令人捉急。後來,突然想自己寫代碼做個2048,於是花了一天時間用C++與QML實現了這個好玩的遊戲。 工程從Qt Creator中建立,是個Qt Quick Application,由C++與QML混合編程完成,編程方法與技巧可參考《Qt QML /
Time of Update: 2018-07-29
標頭檔 /************************************************************************發送郵件模組標頭檔*可以發送文本和附件(支援多個附件一起發送)*************************************************************************/#pragma oncestruct sMailInfo
Time of Update: 2018-07-29
Tuple是返回多個參數,C# 4.0引入 最多支援8個參數,第八個參數是Tuple,意思就是參數多於8個就開始嵌套調用了 一個函數返回多個類型,這樣就不在用out , ref等輸出輸入參數了,可以直接定義一個tuple類型就可以了。非常方便。 // // 摘要: // Creates a new 2-tuple, or pair. // // 參數: // item1: //
Time of Update: 2018-07-29
C語言中的ASSERT(斷言)宏是嵌入式軟體開發人員可以使用的最好的調試工具之一。雖然ASSERT功能強大,但我很少看到它被實施,並且在一些使用它的案例中,它的實施要麼是有瑕疵的要麼是不正確的。以下一些技巧將不僅能夠協助闡明在何時、何地使用ASSERT,而且還能闡明如何開始正確使用它。 技巧1:記住ASSERT的定義 對許多開發人員來說,斷言是一個令人困惑的話題,因為它們的許多使用方式與其設計初衷背道而馳。我見到的最清晰的斷言定義是這樣的:
Time of Update: 2018-07-29
C#讀寫CSV,一般情況下根據分隔字元(最常用的是逗號分隔字元)自動切分 但是特殊情況下,如表中有分隔字元的語句,需要特殊解析 對應的常值內容: using System;using System.Collections.Generic;using System.IO;using System.Text;namespace ReadWriteCsv{ /// <summary> /// Class to
Time of Update: 2018-07-29
#include <iostream> #include <stdio.h> using namespace std; void insort(int s[],int n) { int i,j; for (i=2;i<=n;i++) {