Time of Update: 2018-12-03
using System;using System.IO;using System.Drawing;using System.Windows.Forms;using System.Drawing.Imaging;public class ImageConvert{ //主要通過Stream作為中間橋樑 public static Image ByteArrayToImage(byte[] iamgebytes) { MemoryStream ms =
Time of Update: 2018-12-03
為了全面,這裡都將XML儲存到檔案中,有三種產生XML的方式:1。我認為是最原始,最基本的一種:利用XmlDocument向一個XML檔案裡寫節點,然後再利用XmlDocument儲存檔案。 首先載入要寫入的XML檔案,但是如果沒有的,就要建立,在建立的過程中,要有寫入的代碼; XmlDocument doc = new XmlDocument(); try {
Time of Update: 2018-12-03
#### c++ to flash calls:TRY{CString ret = m_FlashPlayer.CallFunction("<invoke name=/"FlashFunction/" returntype=/"xml/"><arguments><string> empty
Time of Update: 2018-12-03
預設情況下,.NET的隨機數是根據系統時間來產生的,如果電腦速度很快的話,產生的隨機數就會一樣。Random rnd = new Random(); int rndNum = rnd.Next(); //int 取值範圍內的隨機數 int rndNum = rnd.Next(10); //得0~9的隨機數 int rndNum = rnd.Next(10,20); //得10~19的隨機數 int rndNum = rnd.NextDouble();
Time of Update: 2018-12-03
取硬碟序號網上流傳的方法:public string getHardDiskID() { ManagementClass searcher = new ManagementClass("WIN32_DiskDrive"); ManagementObjectCollection moc = searcher.GetInstances(); string strHardDiskID = "";
Time of Update: 2018-12-03
RL-RTX(CM3)的任務中不能配置NVIC,否則進入HardFault的原因http://www.keil.com/support/man/docs/rlarm/rlarm_ar_cfgrunpriv.htm運行在特權模式Cortex-M裝置的RTX庫允許選擇使用者任務的運行模式。任務可以運行在兩個模式:非特權模式——受保護的模式特權模式——不受保護的模式【譯註:保護應該是指作業系統保護代碼運行】在特權模式,使用者可以訪問和配置系統寄存器和控制寄存器如NVIC中斷控制器等。在非特權模式下,這
Time of Update: 2018-12-03
//下面的demo代碼可以直接拷貝到檔案,並且在g++編譯器編譯後即可執行 #include <stdlib.h>#include <time.h>#include <stdio.h>#include <unistd.h>#include <string>#include <iostream>using namespace std; //定義用於測試的異常類class MyException{ public:
Time of Update: 2018-12-03
from:http://blog.21ic.com/user1/2949/archives/2007/35550.html1,防止一個標頭檔被重複包含 #ifndef COMDEF_H #define COMDEF_H //標頭檔內容 #endif 2,重新定義一些類型,防止由於各種平台和編譯器的不同,而產生的類型位元組數差異,方便移植。 typedef unsigned char boolean; /* Boolean value type. */ typedef
Time of Update: 2018-12-03
來自:http://baike.baidu.com/view/1276747.htm #pragma once 概述這是一個比較常用的C/C++雜注,只要在標頭檔的最開始加入這條雜注,就能夠保證標頭檔只被編譯一次。#pragma
Time of Update: 2018-12-03
一直以來,union都是個很少用到的東西,對於這些不常用的結構往往記不住。這次看書又看到了,還是學習一下吧。一般在Windows API的一些資料結構中才能看到這個union,其實並不複雜。本質上來說和結構體是一樣的,但是從封裝的角度來看有差異。1、union中可以定義多個成員,union的大小由最大的成員的大小決定。 2、union成員共用同一塊大小的記憶體,一次只能使用其中的一個成員。 3、對某一個成員賦值,會覆蓋其他成員的值(也不奇怪,因為他們共用一塊記憶體。但前提是成員所佔位元組數相同,
Time of Update: 2018-12-03
密封的類和方法變數被const 和readonly關鍵字修飾,表明這些變數在初始化之後,是不能修改的,聲明為const的變數必須在聲明時初始化;聲明為readonly的變數可以在建構函式中初始化,當初始化後,也不能修改。關鍵字sealed(密封)適用於方法和類,目的是防止被覆蓋和繼承,聲明為sealed的方法不能在衍生類別中被覆蓋,聲明為static方法和private的方法都是隱式的密封方法。使用密封類對運行時的效能略有提升。
Time of Update: 2018-12-03
C++異常機制的實現方式和開銷分析白楊http://baiy.cn 在我幾年前開始寫《C++編碼規範與指導》一文時,就已經規划著要加入這樣一篇討論 C++ 異常機制的文章了。沒想到時隔幾年以後才有機會把這個尾巴補完 :-)。還是那句開場白:“在恰當的場合使用恰當的特性” 對每個稱職的 C++ 程式員來說都是一個基本標準。想要做到這點,就必須要瞭解語言中每個特性的實現方式及其時空開銷。異常處理由於涉及大量底層內容,向來是 C++
Time of Update: 2018-12-03
class Person { private string name = "Jack"; //欄位 public string Name //屬性 only read { get { return name; } } public int weight; //欄位 private int age;
Time of Update: 2018-12-03
重載-類中定義的方法可能有不同的版本public bool Withdraw(double amt,string name)public bool Withdraw(double amt)特點(兩必須一可以)方法名必須相同參數類標必須不相同傳回值類型可以不相同虛擬函數聲明虛方法 使用virtual關鍵字pubilc virtual bool Withdraw(...); 調用虛方法,運行是將確定調用對象是什麼類的執行個體,並調用適當的覆寫
Time of Update: 2018-12-03
(轉載)C Runtime Library(MSVCRT)來曆 msvcrt.dll (名稱:Microsoft C Runtime Library)提供了printf,malloc,strcpy等C語言庫函數,並且為使用C/C++(Vc)編繹的程式提供了初始化(如擷取命令列參數)以及退出等功能. C Runtime Library 的來曆, API, STL, MFC,
Time of Update: 2018-12-03
C語言的標準庫的標頭檔好像只有下面這些: <assert.h> : Diagnostics <ctype.h> : Character Class Tests <errno.h> : Error Codes Reported by (Some) Library Functions <float.h> :
Time of Update: 2018-12-03
沒事看了看《C和指標》,總結一些以前沒注意到得或者疏忽掉的技術盲點。 1.關於結構體的自引用,結構自引用不能引用這個結構本身,但是可以引用結構指標。原因是編譯器在結構的長度確定之前就已經知道了指標的長度,所有這種引用時合法的,比如鏈表初始化的時候,都是用的這種方法添加指標域的。Code:struct self_err2{ int a; struct self_err2 *b; int c; };
Time of Update: 2018-12-03
udhcpd中調用各個模組完成dhcp伺服器功能。udhcpd執行首先是讀入了DHCPD_CONF_FILE的設定檔,完成全域變數server_config的初始化工作。之後將進程的pid加鎖獨佔性地寫入到檔案中。再之後通過介面名,完成伺服器介面索引MAC地址和IP地址的讀取工作。在調用daemon之後,再次寫入dhcpd的pid。調用daemon之後將伺服器處理序設定為了守護進程在後台執行,但是其pid發生了變化,故此要再次寫入。在檔案中儲存pid,是為了方便地查看到dhcp伺服器守護進程的p
Time of Update: 2018-12-03
本來是在複習軟考的時候,準備擴充一下,把數組名和指標徹底分清楚結果自己寫的代碼的行為把自己徹底搞暈了...Code:#include "stdio.h" int fun1(int *a) { int* p=(int *)(&a+1); printf("%d/n",*a); printf("%d/n",a); printf("%d/n",&a); printf("%d/n",&a+1); printf("%d/n",p[-
Time of Update: 2018-12-03
#include<iostream>using namespace std;const int size = 100;const int inf = 5000; //兩點距離上界//第一組測試參數const int n = 6; //圖頂點個數加1int prev[n]; //圖的前驅頂點int dist[] = {0,0,5000,5000,5000,5000}; //最短距離數組int c[n][n] = {{0,0,0,0,0,0},{0,0,2,