獲取系統Temp,以及其注意事項。

2021-04-19 08:26:06 字數 860 閱讀 3878

今天忙了一上午,都乙個問題搞得莫名其妙,其實,只要真正的理解了,也就是個很小的問題。

我們獲取系統的temp:

gettemppath(max_path, g_strtempdir.getbuffersetlength(max_path));

得到的系統temp路徑 g_strtempdir是乙個短的路徑。當然,我們可以把它程式設計完整的。

getlongpathname(

g_strtempdir.getbuffer(0),//lpctstr lpszshortpath,

g_strtempdir.getbuffersetlength(max_path),//lptstr lpszlongpath,

max_path//dword cchbuffer

);這樣我們獲得了乙個完整的系統temp路徑。

但是,會有乙個奇怪的問題。在這個路徑後加不上其他字串。比如:

cstring strtest=_t("");

strtest = g_strtempdir + _t("test");

我們會很鬱悶發現,strtest竟然只是等於g_strtempdir。為什麼?

在網路上搜尋了不久,終於找到了答案。

實際上gettemppath返回的字串包含了乙個結束符,你看一下len的實際值就明白了,因此在後面加的字串被當作無效。

因此,在得到系統temp後,我做了如下的處理:

g_strtempdir = g_strtempdir.left(strlen(g_strtempdir)); 

這樣,結束符就被刪掉了。

還有,越來越不相信cstring::getlength()了。似乎,原始的還更好用些。(哈哈,只要能用就行,其他的就不管了)。

C 多型以及其注意事項

1 虛函式 覆蓋以及多型的概念 1 class 基類 的成員函式,稱為虛函式或方法。2 覆蓋 如果子類的成員函式和基類的虛函式具有 相同 的函式原型,那麼該成員函式就也是虛函式,無論其是否帶有virtual關鍵字,且對基類中的虛函式構成覆蓋。class 子類 public 基類 3 多型 如果子類提...

python 獲取路徑及其注意事項

此刻我們在某一目錄下有乙個檔案,姑且叫做test.py import os print os.path.abspath file 獲得該指令碼的絕對路徑。通常我們也建議這麼做,畢竟絕對路徑下出問題的概率比相對路徑小多了。我們要獲取該指令碼坐在的目錄用什麼辦法呢 import os print os....

switch語句及其注意事項

switch 語法 switch 表示式 語義 先得出表示式的結果,根據結果跳轉到相應的 case 語句塊裡面去執行 表示式結果 常量表示式 就叫相應的 case 語句塊 如果case 後面的常量表示式沒有乙個跟表示式結果對應的 那麼就跳轉到 default 裡面執行語句塊n 當case 塊裡面不加...