這說(shuō)明你調(diào)用 API 傳參存在問(wèn)題。
我們提供的服務(wù)有:成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、三沙ssl等。為1000+企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的三沙網(wǎng)站制作公司
首先有沒(méi)有設(shè)置結(jié)構(gòu)體內(nèi)存對(duì)齊?
[StructLayout(LayoutKind.Sequential)] 加了嗎?
COLORREF 不要用 Color 代替,用 int 代替
TCHAR cfFaceName[32] 定義為 Byte 數(shù)組也可以,帶在傳參前,必須初始化為 32 個(gè)長(zhǎng)度
你好朋友,不要聽(tīng)8樓匿名者的一派胡言,都是從網(wǎng)上摘抄的,下面這篇文章是我的原創(chuàng),應(yīng)該對(duì)你有所幫助。
你既然喜歡編程,就應(yīng)該認(rèn)認(rèn)真真的學(xué)習(xí)一門(mén)語(yǔ)言,先從VB開(kāi)始,VB是比較好的入門(mén)語(yǔ)言,可視化的,比較簡(jiǎn)單,是非常好的入門(mén)語(yǔ)言。書(shū)籍最少應(yīng)該準(zhǔn)備兩本,不可能一本書(shū)籍會(huì)包含VB的所有內(nèi)容,在看書(shū)的時(shí)候,可以交叉的看,一本書(shū)籍中沒(méi)有講到的內(nèi)容可以在另一本中看到,這樣對(duì)學(xué)習(xí)是很有好處的,也能保證所學(xué)知識(shí)的完整性。學(xué)編程是一個(gè)很漫長(zhǎng)的過(guò)程,不要著急,要理論與實(shí)踐想結(jié)合,例程書(shū)籍也是很重要的,看源代碼對(duì)學(xué)習(xí)也是很有幫助的,等你學(xué)完這門(mén)VB語(yǔ)言之后,學(xué)習(xí)別的語(yǔ)言是非常簡(jiǎn)單,可以嘗試C語(yǔ)言,按照C——C++——VC的順序?qū)W習(xí),有助于知識(shí)的連貫性,我也希望你能學(xué)好的。
學(xué)習(xí)C語(yǔ)言,譚浩強(qiáng)的《C程序設(shè)計(jì)》是一部非常好的C語(yǔ)言書(shū)籍,學(xué)習(xí)程序設(shè)計(jì)是一個(gè)非常漫長(zhǎng)的過(guò)程,不要著急,一本書(shū)多看兩遍三遍,學(xué)會(huì)交叉學(xué)習(xí)法,在學(xué)習(xí)C的過(guò)程中,可以看看數(shù)據(jù)結(jié)構(gòu),編譯原理,操作系統(tǒng)等書(shū)籍,對(duì)編成都是很有幫助的。最開(kāi)始學(xué)習(xí)的時(shí)候,先不要編一些比較大的程序,多編一些小程序,比如數(shù)組運(yùn)算,字符組合等等,指針是C語(yǔ)言的精華,是比較復(fù)雜的部分。如果有一天你能熟練駕馭指針的操作了,我相信你,你一定能學(xué)習(xí)好C語(yǔ)言的。
我是2001年接觸編程的,剛開(kāi)始只是大概了解一下,并沒(méi)有進(jìn)行比較深入的學(xué)習(xí),我是從VB開(kāi)始入門(mén)的,學(xué)了1年多,然后轉(zhuǎn)入C語(yǔ)言,按照C——C++——VC的順序?qū)W習(xí),C學(xué)了兩年,現(xiàn)在開(kāi)始學(xué)習(xí)C++,C++的學(xué)習(xí)是很有難度的,類,標(biāo)準(zhǔn)庫(kù),多態(tài),繼承等等比較抽象難道懂的概念,雖然他秉承了C語(yǔ)言的風(fēng)格,但是有很多很多是C語(yǔ)言不具備的,要多看書(shū),上機(jī)實(shí)踐也是必不可少的?!禖++編程思想》,《C++標(biāo)準(zhǔn)庫(kù)》,這些書(shū)都非常好,內(nèi)容也很全面,例程書(shū)籍也是必不可少的,多看源代碼對(duì)編程是很有幫助的,也會(huì)少走很多彎路??傊珻++的學(xué)習(xí)是一個(gè)比較漫長(zhǎng)的過(guò)程,大概需要兩年的時(shí)間,這只是底限,如果想學(xué)通,學(xué)精,還需要更多的時(shí)間。
我向你推薦一些C++經(jīng)典書(shū)籍:
c++程序設(shè)計(jì)教程
c++編程思想
c++大學(xué)教程
c++程序設(shè)計(jì)語(yǔ)言
數(shù)據(jù)結(jié)構(gòu)算法與應(yīng)用c++語(yǔ)言描述
c++標(biāo)準(zhǔn)模板庫(kù)------自修教程與參考手冊(cè)
泛型編程與STL
深度探索c++對(duì)象模型
設(shè)計(jì)模式---可復(fù)用面向?qū)ο筌浖幕A(chǔ)
重構(gòu)---改善既有代碼的設(shè)計(jì)
Essential c++
Effective c++
More Effctive c++
C++ primer
前五本應(yīng)該屬于入門(mén)書(shū)籍,后面的屬于學(xué)習(xí)難度比較大的,想提高C++的編程能力,看看這些書(shū)籍有好處。建議你把編程思想這本書(shū)多看看。多做練習(xí)題,對(duì)提高編程水平的幫助是很大的。
其實(shí)語(yǔ)言是相通的,一門(mén)語(yǔ)言學(xué)會(huì)了,學(xué)習(xí)其他語(yǔ)言就比較容易了。
業(yè)界有這樣一種說(shuō)法,因?yàn)镴AVA這門(mén)語(yǔ)言包含了C++的一些特性,掌握了C++,就等于掌握了JAVA的80%,
在掌握了C++之后(我說(shuō)的掌握指的是,可以熟練用C++編程序了,并沒(méi)有要求你完全掌握C++的所有部分,沒(méi)有人能達(dá)到這一點(diǎn),因?yàn)镃++太龐大了,如果能堅(jiān)持不懈的學(xué)習(xí)C++兩年到三年的時(shí)間了,你就可以學(xué)習(xí)其他的語(yǔ)言了)可以試著學(xué)習(xí)一些其他的語(yǔ)言,如JAVA,VC++等等比較復(fù)雜的語(yǔ)言.
這時(shí)候可以說(shuō)你已經(jīng)對(duì)程序設(shè)計(jì)語(yǔ)言有個(gè)大體的認(rèn)識(shí)了,可以明確自己學(xué)習(xí)的方向,根據(jù)自己的學(xué)習(xí)情況而定,是學(xué)習(xí)一些自己比較感興趣的語(yǔ)言啊(從興趣出發(fā)),還是為了找工作啊,開(kāi)始進(jìn)行更深入的學(xué)習(xí).比如學(xué)習(xí)windows下的框架編程和點(diǎn)虐 編程等等比較復(fù)雜的語(yǔ)言.
如果是為了找工作的話我建議你學(xué)好C,C++,JAVA三門(mén)語(yǔ)言.
在我國(guó)目前的軟件開(kāi)發(fā)行業(yè)中,北方C,C++,JAVA的需求量是非常大的.南方以VB為主.
關(guān)于英語(yǔ)對(duì)學(xué)習(xí)程序設(shè)計(jì)有沒(méi)有幫助的文章這個(gè)話題已經(jīng)有很多人議論過(guò)了,我個(gè)人建議把計(jì)算機(jī)專業(yè)術(shù)語(yǔ)弄明白了就可以了,你可以買(mǎi)一本計(jì)算機(jī)英語(yǔ)教程看一看,對(duì)程序設(shè)計(jì)是有幫助的。其實(shí)程序設(shè)計(jì)當(dāng)中的英文都是一些非常簡(jiǎn)單的,如for,else,while.......并沒(méi)有太高深的,而且學(xué)習(xí)程序設(shè)計(jì)不像學(xué)習(xí)網(wǎng)絡(luò),如CCNA這類認(rèn)證需要掌握大量的英文。但是在學(xué)習(xí)程序設(shè)計(jì)的時(shí)候身邊有兩個(gè)工具應(yīng)該足夠了-----------金山詞霸,計(jì)算機(jī)詞典。相信你一定能學(xué)好程序設(shè)計(jì)的。
學(xué)習(xí)數(shù)學(xué)和學(xué)習(xí)程序設(shè)計(jì)有一個(gè)共同點(diǎn)------鍛煉邏輯思維能力。在程序設(shè)計(jì)的學(xué)習(xí)中涉及到數(shù)學(xué)的地方并不多,所以也沒(méi)有必要去認(rèn)真的學(xué)習(xí)數(shù)學(xué)也可以學(xué)好程序設(shè)計(jì)的。
如果你是一個(gè)肯吃苦,肯用心學(xué)習(xí)程序設(shè)計(jì)的人,具有堅(jiān)持不懈的精神的人,我相信,只要你認(rèn)認(rèn)真真去學(xué),即使你的英語(yǔ)數(shù)學(xué)水平再差,你也一定能夠?qū)W好程序設(shè)計(jì)的。
我是一名大三的學(xué)生,我也正在學(xué)習(xí)C++這門(mén)語(yǔ)言,一年多的時(shí)間,學(xué)習(xí)的感覺(jué)真的很累的,希望能和你成為朋友!
好了,說(shuō)了這么多,可以參考一下,為自己做個(gè)學(xué)習(xí)計(jì)劃,要對(duì)自己有信心,最后祝你在學(xué)習(xí)編程的道路上走的更好更遠(yuǎn),祝你學(xué)有所成??!
我的QQ:261174630
DLL(動(dòng)態(tài)鏈接庫(kù))是一個(gè)很有用的東西,在開(kāi)發(fā)大項(xiàng)目的時(shí)候顯得非常重要,因?yàn)槎嗳撕献鏖_(kāi)發(fā)時(shí),可以給每個(gè)人分配一個(gè)任務(wù),用DLL完成,最后組合起來(lái),就不會(huì)出現(xiàn)互相沖突的問(wèn)題。這里給出最簡(jiǎn)單的DLL編寫(xiě)與調(diào)用的示例
首先,我們打開(kāi)VB.NET,選擇類庫(kù),名稱改為test
然后輸入以下代碼
Public?Class?test
Public?Function?test(ByVal?a?As?Long,?ByVal?b?As?Long)?As?Long
Return?a?+?b
End?Function
End?Class
保存后,生成DLL文件。
這就是最簡(jiǎn)單的一個(gè)DLL,下面是調(diào)用該DLL的示例
新建一個(gè)工程,單擊“項(xiàng)目” -- 添加引用
找到剛才生成的DLL,雙擊它
添加引用以后,似乎什么也沒(méi)發(fā)生,這時(shí)我們輸入以下代碼:
Imports test.test
這樣,就包含了該DLL的類。
然后我們定義一個(gè)類
Dim test As New test.test
這樣,就可以使用里面的函數(shù)了,下面是程序示例
Imports?test.test
Public?Class?Form1
Private?Sub?Form1_Load(ByVal?sender?As?System.Object,?ByVal?e?As?System.EventArgs)?Handles?MyBase.Load
Dim?test?As?New?test.test
MsgBox(test.test(1,?2))
End?Sub
End?Class
運(yùn)行該程序,可以看到,調(diào)用了DLL內(nèi)的函數(shù)。
這就是最簡(jiǎn)單的DLL示例,可以將一些復(fù)雜的代碼集成到DLL里,以后升級(jí)或重用都比較方便。