Time of Update: 2018-12-07
作者介紹:Andrew Troelsen是微軟的C# MVP,同時是Intertech Training技術培訓部的副總裁及合作者。這是我在Duncan Mackenzie的部落格上看到的,感覺很有意思,所以翻譯了幾篇。原文可以查看:http://blogs.msdn.com/csharpfaq/category/7580.aspx1、通過Windows Form處理Win32訊息在非託管世界裡,擷取儲存在訊息佇列的Win32訊息時很常見的。如果你希望在託管的Windows
Time of Update: 2018-12-07
要在c#中擷取路徑有好多方法,一般常用的有以下五種: //擷取應用程式的當前工作目錄。 String path1 = System.IO.Directory.GetCurrentDirectory(); MessageBox.Show("擷取應用程式的當前工作目錄:" + path1); //擷取程式的基目錄。 String path2 =
Time of Update: 2018-12-07
string info = "用戶端IP:" + Page.Request.UserHostAddress; info += "<br/>使用者資訊:" + Page.User; info += "<br/>伺服器電腦名稱:" + Page.Server.MachineName; info += "<br/>目前使用者電腦名稱:" + System.Net.Dns.GetHostName();
Time of Update: 2018-12-07
比較基礎的東西,平時用的不多,真到碰到時卻不會用了,下面是整理的一些資料 int類型即Int32, 由4個位元組32位表示,高第31位(編號從零開始)用來表示正負,1為負數,0為正數 (左表示高位,右表示低) int 類型的負數是採用補碼來表示的,即在對應的int類型正數上按位求反後再加1 比方計算-1,其正數為 0000000...001(31個零跟一個1) 那麼按位求反後應該是 111111111....10
Time of Update: 2018-12-07
1、http://www.denisbauer.com/NETTools/FileDisassembler.aspx 下載FileDisassembler2、http://www.aisto.com/roeder/dotnet/ 下載Reflector
Time of Update: 2018-12-07
split 分隔字串比較常用,剛剛網上給看到這個,發現還不錯,很久沒更新偶的blog了,上來借用發發,以後說不定哪個時間忘記了還可以來瞧瞧。最近經常看到論壇中許多文章詢問如何使用split來分割字串,我這裡對split做一些簡單的總結,希望能夠對大家有所協助。下面介紹幾種方法:第一種方法:開啟vs.net建立一個控制台項目。然後在Main()方法下輸入下面的程式。 string s="abcdeabcdeabcde"; string[] sArray=s.Split('c'
Time of Update: 2018-12-07
public class TestTimer { //TimerCallback 委託,GlobalTimer_ToDo表示要執行的方法 public static Timer GlobalTimer = new Timer(new TimerCallback(GlobalTimer_ToDo), null, Timeout.Infinite, Timeout.Infinite); /*也可以直接定時
Time of Update: 2018-12-07
1、使用線程的情況① 程式需要執行和兩個和多個任務② 程式要等待某事件的發生:例如使用者輸入、檔案操作、網路操作和搜尋③ 背景程式2、多線程的並發執行如果有多個線程在執行,單CPU只有一個,到底執行的哪個?① 如果一個線程連續佔用CPU資源時間過長,其它的資源得不到執行,則系統會強制的切換執行其它線程。(強制剝奪)② 如果一個線程沒事可做、CPU可執行其它線程。(主動放棄)③
Time of Update: 2018-12-07
C語言面試題之華為篇(答案全)(1)什麼是先行編譯,何時需要先行編譯: 答案: 1、總是使用不經常改動的大型代碼體。 2、程式由多個模組組成,所有模組都使用一組標準的包含檔案和相同的編譯選項。在這種情況下,可以將所有包含檔案先行編譯為一個先行編譯頭。 (2)char * const p char const * p const char *p 上述三個有什麼區別? 答案: char * const p;
Time of Update: 2018-12-07
#include <stdio.h>#include <stdlib.h>#define NUM_LEN 100int add_str(char * pch1,char * pch2 , char * chResult){ chResult[NUM_LEN-1]='\0'; int idx=NUM_LEN-2; char *pEnd1=pch1,*pEnd2=pch2; for(;*pEnd1!='\0';pEnd1++);
Time of Update: 2018-12-07
之前覺得很簡單,真做起來,轉了不到彎唉! 代碼Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->public class DownLoadDBHandler : IHttpHandler {public void ProcessRequest(HttpContext context) {
Time of Update: 2018-12-07
WOX是一個開放原始碼的項目(http://woxserializer.sourceforge.net/)。 他可以序列化Java和C#對象到XML,也可以還原。他的主要特點是使用了新一代的XML標準,其目的是讓語言更獨立。這意味著,如果我們序列化一個Java對象到XML,我們可以採用XML來重建對象成C#,反之亦然。 WOX提供了一個簡單,穩定的方式序列化對象到XML。他便於使用,你不需要修改您的源檔案和任何特別的聲明。 WOX的部分特點舉例: *便於使用:簡單的類提供了序列化和放序列化方法。
Time of Update: 2018-12-07
/// <summary> /// 縮放圖片 /// </summary> /// <param name="img">原圖片</param> /// <param name="xWith">縮放寬比例,如果想縮小圖片,小於100</param> /// <param
Time of Update: 2018-12-07
/* 4.11 fibonacci數列,前15項 1,1,2,3,5,。。。。。*/#include "stdio.h"void main(){ int f[15]={1,1}, i; for(i=2;i<=14;i++) /* 計算 */ f[i]=f[i-2]+f[i-1]; printf("fibonacci數列,前15項\n"); /* 輸出 */ for(i=0;i<=14;i++) {
Time of Update: 2018-12-07
.NET Framework 開發人員可以參照以下文章給命名空間,類,對象,方法,屬性,參數等命名:1)Guidelines for Names http://msdn2.microsoft.com/en-us/library/ms229002(VS.80).aspx2)MSDN2005簡體中文版:ms-help://MS.VSCC.v80/MS.MSDN.v80/MS.NETDEVFX.v20.chs/dv_fxdesignguide/html/fc076d66-9b5f-42d3-aa65
Time of Update: 2018-12-07
C#介面是一個讓很多初學C#者容易迷糊的東西,用起來好像很簡單,定義介面,裡麵包含方法,但沒有方法具體實現的代碼,然後在繼承該介面的類裡面要實現介面的所有方法的代碼,但沒有真正認識到介面的作用的時候就覺得用介面是多此一舉,當然你這樣想那是絕對絕對錯誤的。 我們定義一個介面: public interface IBark { void Bark(); }
Time of Update: 2018-12-07
好久不寫部落格了,汗,開始吧,呵呵。 堆是一種動態儲存裝置的結構,本質應該就是資料區段中的自由儲存區吧,呵呵。堆中存入資料 ,總是以2B的整數倍進行分配,地址向增加方向變動。個人理解為可以在記憶體中自己申請一段空間進行儲存資料,呵呵,String的原理可能就是這樣子的。 主要函數有malloc() free() realloc() calloc()函數,下面是個例子,在一本書上看到的,呵呵。 Code highlighting produced by Actipro
Time of Update: 2018-12-07
[廢話] 其實寫C語言的解譯器也是出於偶然的原因,本來只是想給自己的編輯器添加指令碼解析的功能,或者簡單的宏調用的功能。結果就想實現簡單的C語言的指令碼解析,後來乾脆就想支援C的全部文法。至今還未完成...前幾天實現了C的先行編譯的部分功能,主要是#define先行編譯宏。 可以下載使用,呵呵:)[先行編譯]1. C的先行編譯主要是由代碼中的先行編譯行實現,以#開始的行是預先處理命令列,#前後可出現空白符,一行中可以只有#, 稱為空白行。命令列後面可以有注釋,可以\換行2.
Time of Update: 2018-12-07
在寫CuteC文字編輯器的同時,為了使之有指令碼執行能力。特意實現了一個簡易的C語言解譯器,所謂的解譯器,就是它是解析執行指令檔的,並不產生可執行檔目標代碼。它具備了C語言的幾乎全部的文法。隨著時間的推移,我打算把它作為一個獨立的項目來開發了。在這個過程中,自己也學到了不少的知識,所以也打算跟大家分享。寫這些東西,雖然是重複發明輪子的事,但也不至於是在浪費生命。程式員嘛,我總覺得應該是要理解我們每天所編譯出來的程式是怎麼被執行,應該明白我們敲打的每行代碼的實際意義。
Time of Update: 2018-12-07
靜態建構函式,這個東東大家用的較少吧。靜態建構函式還是很有趣的,一下是它的特點:1)在執行建構函式時會先執行靜態建構函式。2)調用類的靜態成員時會先執行靜態建構函式。3)靜態建構函式只執行一次。(無論再建立對象還是調用類的靜態成員)以下是包含靜態建構函式的類。Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->public class Test{