Time of Update: 2018-12-08
win7下無法向c盤寫入檔案,目前使用者只能向自己的使用者檔案夾寫入檔案,比如MyDocuments,檔案夾,用c#得到這些檔案夾的目錄方法是:複製代碼 代碼如下:string path=System.Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments); Environment.SpecialFolder 枚舉說明: CommonApplicationData
Time of Update: 2018-12-08
Windows作業系統的版本號碼一覽作業系統 PlatformID 主要版本號 副版本號碼 Windows95 1 4 0 Windows98 1 4 10 WindowsMe 1 4 90 WindowsNT3.5 2 3 0 WindowsNT4.0 2 4 0 Windows2000 2 5 0 WindowsXP 2 5 1 Windows2003 2 5 2 WindowsVista 2 6 0 Windows7 2 6 1 Windows8
Time of Update: 2018-12-08
在C# winform應用程式中,用以下代碼可以進行一些記憶體使用量的最佳化複製代碼 代碼如下:using System;using System.Diagnostics;using System.Runtime.InteropServices;/// <summary>/// 包含各種記憶體管理、最佳化的方法/// </summary> public class Memory { private static readonly Version
Time of Update: 2018-12-08
以下這段C#代碼實現的功能是在螢幕上畫圖的效果!具體代碼如下:複製代碼 代碼如下://DllImport所在的名字空間 using System.Runtime.InteropServices;[DllImport("User32.dll")]public extern static System.IntPtr GetDC(System.IntPtr hWnd); private void button19_Click(object sender, EventArgs e){
Time of Update: 2018-12-08
假定建立了XmlWriter的執行個體變數xmlWriter,下文中將使用此執行個體變數寫Xml1.如何使用XmlWriter寫Xml文檔聲明複製代碼 代碼如下:// WriteStartDocument方法可以接受一個bool參數(表示standalone,是否為獨立文檔)或者不指定參數standalone保持預設值 xmlWriter.WriteStartDocument(false|true);
Time of Update: 2018-12-08
最近被.net winform中的控制項布局搞困惑了,由於控制項都是使用Dock方式的,操作起來也是比較方便,如果最大化,視窗大小調整等,都可以隨著視窗大小的變化而變化。但問題是,.net winform的dock方式是根據先添加的控制項順序進行優先順序Dock排列的,假設我想目前有三個控制項A、B、C分別以 Top、Bottom以及Fill方式填充視窗即視窗看起來應該是這樣的:---------------------A---------------------C---------------
Time of Update: 2018-12-08
複製代碼 代碼如下:const int SECOND = 1;const int MINUTE = 60 * SECOND;const int HOUR = 60 * MINUTE;const int DAY = 24 * HOUR;const int MONTH = 30 * DAY;if (delta < 0){ return "not yet";}if (delta < 1 * MINUTE){ return ts.Seconds == 1 ? "1秒前" :
Time of Update: 2018-12-08
checked 和 unchecked關鍵字用來限定檢查或者不檢查數學運算溢出的;如果使用了checked發生數學運算溢出時會拋出OverflowException;如果使用了unchecked則不會檢查溢出,算錯了也不會報錯。1. 一段編譯沒通過的代碼複製代碼 代碼如下:int a = int.MaxValue * 2;以上程式碼片段編譯沒有通過,在VS2010中會有一條紅色的波浪線指出這段代碼有問題:”The operation overflows at compile time in
Time of Update: 2018-12-08
各位親們可以嘗試以下代碼:註:這裡我就只有一個html標籤對來說明問題了,首部之類的東西,自己添加。複製代碼 代碼如下:<html> <head> <title>網頁中動態顯示系統日期時間</title> <script language="JavaScript"> function startTime() { var today =
Time of Update: 2018-12-08
在將各種類型的資料構造成字串時,sprintf 的強大功能很少會讓你失望。由於sprintf 跟printf 在用法上幾乎一樣,只是列印的目的地不同而已,前者列印到字串中,後者則直接在命令列上輸出。這也導致sprintf 比printf 有用得多。sprintf 是個變參函數,定義如下:int sprintf( char *buffer, const char *format [, argument] ... );除了前兩個參數類型固定外,後面可以接任意多個參數。而它的精華,顯然就在第二個參數:
Time of Update: 2018-12-08
編寫無錯代碼的最好方法是把防止錯誤放在第一位。 1、while語句後面的空語句問題? while語句是一個迴圈語句,有時候需要空語句有時不需要空語句。為了避免出現誤用用語句我們規定在while使用空語句的時候才用下列方式:while(*pchTo++ = *pchFrom)
Time of Update: 2018-12-08
在實際計算中可能會出現浮點型的無效資料,格式化輸出到檔案中內容為1.79769e+308,輸出到介面就是很大一串資料。這兩種方式無論哪種在閱讀和尋找時就不是很方便。在開發中遇見浮點型資料無效值得判定。無效值定義如下:#define InvalidDouble *(double*)("\xff\xff\xff\xff\xff\xff\xef\x7f")double price;.........(計算步驟省掉)price=GetPrice();
Time of Update: 2018-12-08
@echo off title=HYTradingGateway自動化編譯打包工具mode con cols=80 lines=40echo -------------------------------------------------------------echo 使用說明echo. echo HYTradingGateway自動化編譯打包工具、修改echo
Time of Update: 2018-12-08
在實際計算中可能會出現浮點型的無效資料,格式化輸出到檔案中內容為1.79769e+308,輸出到介面就是很大一串資料。這兩種方式無論哪種在閱讀和尋找時就不是很方便。無效值定義如下:#define InvalidDouble *(double*)("\xff\xff\xff\xff\xff\xff\xef\x7f")double price;.........(計算步驟省掉)price=GetPrice();
Time of Update: 2018-12-08
c++中提供了四種新的強制轉換分別是:const_cast、dynamic_cast、reinterpret_cast、static_cast.這四種轉換類型,每一種都適用於特定的目的:const_cast 一般用於強製取消對象的常量性。它是唯一能夠做到這一點的C++風格的強制轉型。dynamic_cast 主要用於執行"安全向下轉型",也就是說,要確定一個對象是否是一個繼承體系中的一個特定類型。它是唯一不能用舊風格文法執行強制轉型。reinterpret_cast
Time of Update: 2018-12-08
這個應該是一個MFC程式,ON_MESSAGE是添加訊息響應函數,這句話就是添加熱鍵WM_HOTKEY的響應函數。當你註冊了熱鍵之後,當使用者按下熱鍵,會執行OnHotKey函數來處理這個訊息。錯誤就應該是OnHotKey這個函數的聲明錯誤了,傳回值應該是LRESULT. VS2008對訊息的檢查更為嚴格,以前在VC6下完全正常啟動並執行訊息映射在VS2008下編譯不通過ON_MESSAGE(WM_message,OnMyMessage);OnMessage傳回值必須為LRESULT,其形式為:
Time of Update: 2018-12-08
1:常量指標與指標常量常量指標與指標常量名字很接近,但是兩者區別很大。 常量指標是指指向常量的指標,例如:char const *st[4]="str";或者使用下面的方法,效果是一樣的:const char *st[4]="str"; 它聲明了一個指標變數,這個指標指向了一個常量字串,但是由於指向的記憶體空間是常量,因此該地址的內容是不能修改的,例如:*st="no"; //這是不行的,因為記憶體空間的內容不能修改st="ok";
Time of Update: 2018-12-08
一個代碼:複製代碼 代碼如下:#include<stdio.h>#include<stdlib.h>#define uchar unsigned char#define uint unsigned intvoid display(uchar *p);char h[4] = {'A','B','C','\0'};char e[4] = {'E','F','L','\0'};char l[4] = {'M','N','O','\0'};char o[4] = {'X','Y'
Time of Update: 2018-12-08
實現步驟:1.實現整個滑鼠框選的幾個事件(down、move、up),當滑鼠點下記錄滑鼠框選的起點,滑鼠抬起結束操作。2.以滑鼠框選過程中擷取的滑鼠座標為基點計算框選的矩形的4點座標,4點座標以順時針方向布點。3.通過Shape.Path類實現在類上畫出此矩形。代碼如下:複製代碼 代碼如下:namespace HostDemo { public class HostCanvas : Canvas { public HostCanvas() { InitializeComponent();
Time of Update: 2018-12-08
是不是只有編譯的時候才知道程式寫了錯誤?有沒有在未編譯的時候就讓機器幫你檢查錯誤的工具呢?答案是:有!!splint工具.用一個最簡單的HELLO WORLD來表述:=====================================複製代碼 代碼如下:/*錯誤很明顯*/#include <stdio.h>int main(void){ print("hello world\n", s); return}---------------------------------