1. char * 型的變數downloadip賦初值的時候用menset(downloadip, 0, strlen(downloadip));
cstring型的變數sourceip賦初值可用,sourceip=「」;
2. strlen strcpy等函式的操作物件是char *型的。
3. cstring型的變數可以賦初值false,值是空。(怪怪,但是除錯執行通過。)
4. 錯誤「沒有找到mfc80ud.dll,,因此這個應用程式未能啟動。重新安裝應用程式可能會修復此問題。」網上找到的解決方法:「visual studio 2005用嚮導生成的專案,在執行時可能會遇到找不到mfc80ud.dll的問題。這個問題可能是manifest 引起的,因此我們可以通過修改專案屬性->清單工具->輸入輸出,把「嵌入清單」選「否」,.然後編譯、鏈結、執行即可。」
5. sprintf_s:將資料格式化輸出到字串,sprintf_s()是sprintf()的安全版本,通過指定緩衝區長度來避免sprintf()存在的溢位風險.
6. char *strtok(char s, const char *delim);分解字串為一組字串。s為要分解的字串,delim為
分隔符字串。
char *strtok_r(char *s, const char *delim, char **ptrptr);
當strtok()在引數str的字串中發現到引數delim的分割字元時則會將該字元改為'\0'字元。在第一次呼叫時,strtok()必需給予引數str字串,往後的呼叫則將引數str設定成null。每次呼叫成功則返回下乙個分割後的字串指標。如果已無從分割則返回null。
char str ="a,b,c,d*e";
const char * split = ",";
char * p;
p = strtok (str,split);
while(p!=null)
7. void *memcpy(void *dest, const void *src, size_t n);從源src所指的記憶體位址的起始位置開始拷貝n個位元組(not byte)到目標dest所指的記憶體位址的起始位置中.
8.lpctstr不過就是微軟為了表述的方便而弄的乙個typedef,用const char*也是一樣的。。
9. cstringarray
構造乙個空的cstring物件陣列:
getsize獲取這個陣列中的元素數目;
setsize設定這個陣列中包含的元素數目;
getupperbound返回最大的有效索引;
freeextra釋放當前陣列邊界之外的未使用的所有記憶體;
removeall
從陣列中刪除所有元素;
getat
返回位於給定索引處的值;
setat設定給定索引處的元素的值;
不得將陣列增大 elementat返回對陣列中的某一元素指標的臨時引用;
getdata對陣列中的元素允許的訪問,可以是null;
setatgrow設定給定索引處的值;
如果必要的話可以增長陣列
add 在陣列的末尾新增乙個元素;
可根據需要增長陣列
向陣列中新增另乙個陣列;
如果必要的話可增長陣列
copy
將另乙個陣列拷貝到此陣列中;
insertat在指定索引處插入乙個元素(或者是另乙個陣列中的所有元素);
removeat刪除指定索引處的乙個元素。
10. trimright()當在沒有引數的情況下呼叫時,trimleft刪除換行符,空格和tab字元。這個方法可用於消除從右側起所遇到的所有空格字元
。trimleft()。
使用C 開發ActiveX控制項
最近弄了乙個在qt中使用c 控制項的功能,使用的方法是通過c 生產activex控制項,在qt中使用該activex控制項。本文這裡簡單的介紹一下如何用c 生成activex控制項。1.建立winform的usercontrol工程,在控制項的屬性頁中選擇 使程式集com可見 2.分配guid,在控...
使用C 開發ActiveX控制項
最近弄了乙個在qt中使用c 控制項的功能,使用的方法是通過c 生產activex控制項,在qt中使用該activex控制項。本文這裡簡單的介紹一下如何用c 生成activex控制項。1.建立winform的usercontrol工程,在控制項的屬性頁中選擇 使程式集com可見 2.分配guid,在控...
ActiveX控制項
1.概念 activex控制項等價於以前的ole控制項或ocx。乙個典型的控制項包括設計時和運 行時的使用者介面,唯一的idispatch介面定義控制項的方法和屬性,唯一的 iconnectionpoint介面用於控制項可引發的事件。2.控制項框架 圖 1其中,dclock和 dclockevent...