各種經驗與教訓

輸入和輸出是通過內存中的緩衝來完成的,這讓事情變得更快,程序的寫入會存放在內存緩衝中,然後再一起寫入硬盤。守護進程kflushd和kupdate管理這些工作。kupdate間斷的工作(每5秒?)來檢查是否有寫過的緩衝,如過有,就讓kflushd把它們寫入磁盤。

進程有時候無事可做,當他運行時也不一定需要把所有的代碼和數據都放在內存中。這意味着我們可以通過把運行中程序不用的內容切換到交換分區來更好的是用內存。把這些數據移入/移出內存通過kpiod和kswapd,大約每隔1秒,kswapd醒來並檢查內存情況。如果在硬盤的東西要讀入內存,或者內存可用空間不足。kpiod就會被調用。

 

/////下面的這三個語句可以講int型轉換成char型,不過是在C++中的

CString cStr;

int nCount=999;

cStr.Format(_T("%d"),cCount);

在c語言中用sprintf函數。

 

 

////////這個是因爲在VC2008編譯時出現的編碼模式不對導致的問題

 

錯誤:
CWnd::MessageBoxW”: 不能將參數 1 從“const char [25]”轉換爲“LPCTSTR”

原語句:MessageBox("這是一個最簡單的消息框!");

這是一個編碼模式錯誤的問題,默認我們一新建一個工程時是默認UNICODE模式的,所以這裏的字符不是UNICODE模式的,導致出現這個,解決辦法有2種

1、MessageBox(L"這是一個最簡單的消息框!");

2、改編碼模式,在“項目”-》“屬性”-》“配置屬性”-》“常規”-》“字符集”一欄中將其選爲“使用多字節字符集”就行了


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章