首先讓我們看一段**:
void getctrlrectviaparent( lprect lprc, hwnd hwnddlg, uint idctrl )
類似上面那個
函式——大家有沒有發現問題呢?錯在**?粗略咋一看,並沒有不對的地方啊!奇怪了,可就是當執行時,100%出錯!為什麼呢?如果你找不到錯誤來,那麼請你再回去看看指標那一章。否則,下面那一段就不用看了。^_^
哇哇!暈了,找了半天還是沒找出來嗎?頭疼了吧?
還讓我告訴你吧! lprc + sizeof(point)
就這一段!注意了,指標雖然就是乙個位址!並且乙個位址也就是乙個dword!顯然乙個dword+sizeof(point)得出來的結果當然也
就是我們想要的新位址!不可,如果你真這麼想,那就說明你對c的指標掌握的還不夠火厚!
1、指標的
加減時,並不是簡單的位址加減,而是它指向的資料型別的加減!不信你試試!
2、如果要操作
指標的新位址,我們應該這樣做:(void*)(((dword)
lprc) + sizeof(point))。
測試**:
msginfo( "%d, %d, %d, %d, %d, %d, %d", lprc,&(lprc->left),&(lprc->top), sizeof(point), lprc + sizeof(point), &(lprc->right), lprc + sizeof(rect) );
嘿嘿!一目了然吧!?
程式設計師最容易犯得錯誤
如果你對程式設計不感興趣,你的 一定會寫的很爛。結果不僅僅你的事業沒有任何前途,你的團隊也會因此而痛苦不堪。對諸如抽象 多型 介面 異常處理最佳方案等程式設計概念不熟悉的人寫出的 必然是設計糟糕,可讀性和可維護性都極差。有些程式設計師喜歡過於聰明的在乙個複雜的語句裡包含多個步驟的 這會使 的可讀性很...
C 程式設計師最容易犯的7大錯誤
程式設計時犯錯是必然的,即使是乙個很小的錯誤也可能會導致昂貴的代價,聰明的人善於從錯誤中汲取教訓,盡量不再重複犯錯,在這篇文章中,我將重點介紹c 開發人員最容易犯的7個錯誤。格式化字串 在c 程式設計中,字串型別是最容易處理出錯的地方,其代價往往也很昂貴,在.net framework中,字串是乙個...
乙個容易犯的錯誤
microsoft jet 資料庫引擎打不開檔案 c windows system32 ime pintlgnt club admin 它已經被別的使用者以獨佔方式開啟,或沒有檢視資料的許可權。說明 執行當前 web 請求期間,出現未處理的異常。請檢查堆疊跟蹤資訊,以了解有關該錯誤以及 中導致錯誤的...