1 #include <stdio.h> 2 void main() 3 { 4 int i=4; 5 int*p=&i; 6 //int *p=(int *)4; 7 printf("%d\n",*p); 8 printf("%p\n",p); 9 *p=12;10 printf("%d\n",*p);11 printf("%p\n",p);12 getchar();13 return;14 }當為 int *p=
錯誤發生在這幾句部分:struct tm *ltime;char timestr[16];ltime=localtime(&header->ts.tv_sec);錯誤提示為:error C2664: “localtime”: 不能將參數 1 從“const long *__w64 ”轉換為“const time_t *”分析:VC6.0裡,time_t的定義是:typedef long
今天用VC開發的時候,建立兩個類後,發現沒有要類別檢視那裡顯示,在檔案那裡也沒看到,於是就想自己手動把這兩個類加到工程中去,沒想到一點添加檔案就發生記憶體讀寫錯誤。開始以為是軟體出錯了,重啟軟體後,還是一樣,接著發現連從VC 的“檔案”-》的“開啟”也沒辦法開啟檔案了,一樣報記憶體讀寫錯誤。鬱悶了半天,覺得可能是中毒了吧,開始找軟體殺毒,弄來弄去還是出現同樣的錯誤。 於是在網上找資料,找了很久終於讓我找到了,原來是VC6.0和Visio兩個軟體(也可能是office 201
在VC中Unicode編程時出錯LINK : fatal error LNK1104: cannot open file “uafxcw.lib"; 解決方案:找到VC安裝盤,開啟目錄vc6.0/vc98/mfc/lib下即可找到這個檔案 uafxcw.lib這個檔案是安裝的時候沒有預設安裝的,你在安裝盤上找到它放到電腦裡相應的目錄就可以了。加檔案:Project - Add to project - Files 加進去就看到了。ps:如果今後不想在遇到這個問題可以將
概念: 最小公倍數(Least Common Multiple,縮寫L.C.M.),如果有一個自然數a能被自然數b整除,則稱a為b的倍數,b為a的約數,對於兩個整數來說,指該兩數共有倍數中最小的一個。計算最小公倍數時,通常會藉助最大公約數來輔助計算。 兩個數的最大公因數和最小公倍數有著下列關係: 最大公因數×最小公倍數=兩數的乘積 即(a、b)×[a、b]= a×b 演算法(代碼):View Code 1 #include <stdio.h> 2 #include
1.先建立一個對話方塊MFC應用程式,然後在工具箱裡面把Tab Control控制項放到對話方塊中的合適位置上。再在對話方塊類中,聲明一個CTabCtrl變數:CTabCtrl m_tab;變數m_tab用來與對話方塊中的Tab Control控制項互動,為此要在DoDataExchange函數中加入DDX_Control語句:DDX_Control(pDX, IDC_TAB1, m_tab);IDC_TAB1是Tab Control控制項的ID。2.建立兩個對話方塊程式,用來當做Tab
我一直是在虛擬機器安裝的Ubuntu(目前用的是Ubuntu 11.10),用鏡像檔案安裝過程中一直沒有提示叫我選擇系統語言,只好預設英文了。 安裝完成登陸進去之後首先更改更新源為國內伺服器,然後開啟終端,輸入sudo apt-get update,接著提示輸入密碼,然後輸入sudo apt-get upgrade。接著開啟語言支援Language
利用MFC進行編程時,我們從對話方塊中利用GetWindowText得到的字串是CString類型,CString是屬於MFC的類。而一些標準C/C++庫函數是不能直接對CString類型進行操作的,所以我們經常遇到將CString類型轉化char*等等其他資料類型的情況。這裡總結備忘於此!首先要明確,標準C中是不存在string類型的,string是標準C++擴充字串操作的一個類。但是我們知道標準C中有string.h這個標頭檔,這裡要區分清楚,此string非彼string。string.h
向下箭頭符替換和列印:在word中,若要列印向下箭頭符“↓”,只需同步選取“Shift+Enter”按鍵組合就可以(普通分行符號是按下“Enter”鍵)。如果在網上複製的內容中含有向下箭頭分行符號,如果你要刪除或者用其他符號替換的話,請看下面:1、Ctrl+H
WinExec()ExitWindowsEx()GlobalMemoryStatus()GetSystemInfo()GetSystemDirectory()GetWindowsDirectory()GetTaskmanWindow() //user32.dll中
關於回呼函數的作用,請參考http://www.cnblogs.com/ziwuge/archive/2011/07/06/2098764.html這些天在練習的時候,很多在win32控制台裡了回呼函數。再次基礎上移植到VC/MFC中的時候發現有點問題,於是查閱資料,解決方案如下(直接代碼):不過我在查閱資料的時候,看見有的朋友說回呼函數需要被定義為CALLBACK(這是一個宏),遺憾我不知道具體怎麼用。typedef void (*cback)(int a,LPVOID userParam)
wsprintf要求的第一個參數是LPTSTR,假設環境是UNICODE的,那麼LPTSTR相當於就是wchar_t* 就是寬字元指標,在非Unicode環境下就是char*。 有關格式化字串的函數還有如下,詳細用法各位可以查看MSDN,和上面所介紹的都差不多: sprintf 單位元組版本的C/C++庫函數 swprintf 寬位元組版本的C/C++庫函數 而我們上面的wsprintf和上面兩個函數看起來很相似,大家不要搞混淆了啊,wsprintf最前面的w不是代表Wide
1.首先配置環境: 1)在http://www.winpcap.org去下載庫和開發文檔(我使用的是4.0.1中文開發文檔和4.0.2的庫,這兩個版本我沒有發現區別^); 2)同樣在上面的網址下載Winpcap的安裝包,需安裝;2.設定工程環境(以Visual Studio 2005為例):
昨晚在使用QQ同步助手的時候發現一直提示是“連網失敗,請重試”,最後Google了一下原因,特記錄下來:開始→設定→串連→串連→進階→選擇網路; 然後會看見兩個“在程式自動連接到Internet時,使用:”和“在程式自動連接到專用網路時,使用:”。。。問題就在這裡!!!解決方案:看你原來提示“連網失敗”的時候使用的是什麽網路,現在設定為另一個網路再試試。不知道你理解沒有?【注意】My Phone是HTC s900,WM6.1的系統,使用的網路“Internet 設定” 和“WAP”。
UUID的介紹:http://baike.baidu.com/view/1052579.htm GUID的介紹:http://baike.baidu.com/view/185358.htm #include <stdio.h>/*方式一需要的標頭檔和庫*/#include <rpc.h>#pragma comment(lib, "rpcrt4.lib")int main(void){/*方式一*/ UUID myUUID;
在遍曆鏈表時正確釋放元素的方法是:使用臨時變數儲存下一個元素的地址。這樣就可以安全的地在任何時候釋放當前元素,不必擔心在取下一個元素的地址時還要引用它。代碼如下:(注意for執行的順序)struct node *p, *start, *tmp;for(p=start; p; p=tmp){ tmp = p->next; delete(p); p = NULL;} 前提是鏈表最後的 next被賦值為NULL了,要不然即使 p最後沒有資料了還是會執行下去的。
【參考資料
若XXView繼承的是CListCtrl類,那麼直接調用函數CListCtrl &m_listctrl = GetCtrl();即可擷取視圖類中ListCtrl的指標,插入資料通過m_listctrl操作.若是CListCtrl控制項的話,則需要自己定義控制項變數.我看很多朋友是定義的lvcolumn結構體進行資料插入,因為這個功能較多,不過我覺得比較麻煩.所以我喜歡用下面的方法:int nIndex =
先看代碼: 1 #include <stdio.h> 2 3 int fun(int x) 4 { 5 int count =0; 6 while(x) 7 { 8 count++; 9 x = x & (x-1);10 }11 return count;12 }13 14 void main(void)15 {16 int j =0;17 int m =0;18 j = fun(9999);