1. 程式人生 > >C++:常見的不同型別相互轉化的方法

C++:常見的不同型別相互轉化的方法

一、LPARAM型別轉化為CString型別

型別 變數
LPARAM lParam
CString str

1.將變數lParam的值賦予str的方法:

  • ①使用建構函式
CString str((char*)lParam);   
  • ②使用運算子過載
str=(char*)lParam;//注意CString str=(char*)lParam;不會成功
  • ③使用CString的格式化函式:
str.format("%s", (char*)iParam);

二、int型別和CString相互轉化

型別 變數
int nt
CString str

1. 將變數CString的值賦予int的方法:

nt= atoi(str);  

2. 將變數int的值賦予CString的方法:

str.Format("%d",nt); //效果可以理解為:先將str清空,然後再講nt以文字字串輸入到str。當然也有直接在後邊新增的函式CString::append()

PS:關於將int賦予CString,博主嘗試過不借助中轉變數(即利用MFC定義的巨集直接將nt裝換為字串,而不是定義一個CStrinfg str然後再利用CString::Format的函式)。然而找不到這樣的方法,有位網友是這樣說的:沒有直接將int轉為CString這樣的函式,一個是普通的數值變數,一個是類,沒有可能轉的。Format函式是把數值以文字模式字串輸出到CString裡的