æ¹æ³1:
#include <
stdio.h>
int main()
{
char szValue[] = "0x11";
int nValude = 0;
sscanf(szValue,"%x",&nValude);
printf("%d\n",nValude);
return 0;
}
/*è¾åºï¼
17
*/
主è¦ç¨å°sscanfè¿ä¸ªåºå½æ°ï¼
å½æ°å: sscanf
å è½: æ§è¡ä»
å符串ä¸çæ ¼å¼åè¾å
¥
ç¨ æ³: int sscanf(char *string, char *format[,argument,...]); //%xå°±æ¯æ们è¦æ ¼å¼åçç±»åï¼å³è¾åº
åå
è¿å¶æ¹æ³2:
#include <stdio.h>
#include <
stdlib.h>//strtol
头æ件int main()
{
char *p="0x11";
char *str;
int i = (int)strtol(p, &str, 16);//åå
è¿å¶
printf("%d\n",i);
return 0;
}
/*è¾åºï¼
17
*/
主è¦ç¨å°strtolè¿ä¸ªåºå½æ°ï¼å®ç使ç¨æ¹æ³æ¯ï¼
å½æ°å: strtol
å è½: å°ä¸²è½¬æ¢ä¸ºé¿æ´æ°
ç¨ æ³: long strtol(char *str, char **endptr, int base);//baseæææ们è¦è½¬æ¢ä¸ºå è¿å¶æ°
ç¨åºä¾:
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
char *string = "0x11", *endptr;
long lnumber;
/* strtol converts string to long integer */
lnumber = strtol(string, &endptr, 16);
printf("string = %s long = %ld\n", string, lnumber);
return 0;
}
/*è¾åºï¼
string = 0x11 long = 17
*/
å¨VC 6.0çMFCç¨åºä¸ï¼æ们ææ¶è¦è½¬æ¢å¥æå°±å¯ä»¥ç¨strtolè¿ä¸ªå½æ°ï¼æ¯å¦ï¼
HANDLE handle = (HANDLE)strtol(str,NULL, 16);
PS:å¥ææ¯ä»ä¹ï¼
å¥æå°±æ¯ç¨æ¥åºååç§å
å对象çå¯ä¸
æ è¯ç¬¦å·ï¼æ¯ä¸ª32ä½æ´æ°ã
æäºæ¯æ´ä¸ªç³»ç»å¯ä¸(å¦çªå£å¥æ)ï¼æäºæ¯å½åè¿ç¨æ线ç¨ä¸å¯ä¸(å¦çº¿ç¨å¥æï¼å
¨å±çæå¦ä¸ä¸ªæ è¯ç¬¦)ã
详ç»çå¯å为许å¤ç§ï¼é½æ¯ä»¥Hå¼å¤´çãå¨VBä¸ä½¿ç¨æ¶å
¨é¨é½ç¨Longã
常è§çæçªå£å¥æ(HWND)ï¼è®¾å¤æ述表å¥æ(HDC)ï¼å
åå¥æ(HMEM)ï¼æ件å¥æï¼è¿ç¨å¥æï¼çº¿ç¨å¥æï¼ç¬çç±»åå¥æ(HPEN)ï¼åä½å¥æ(HFONT)ï¼åºåå¥æ(HRGN)ççã
å¨ç³è¯·å¥ææ¶æ¯è¦å ç¨èµæºçï¼åä¸ç±»SYSTEMãUSERãGDIãèWINDOWSçèµæºæ¯åºå®çï¼å¹¶ä¸éå
åçæ©å¤§èæ©å¤§ï¼æ以使ç¨å®ä»¥åä¸å®è¦éæ¾ã
æ¹æ³3:
å¨ç½ä¸ï¼è¿çå°ä¸ä½æåæåºä¸ç§æ¹æ³ï¼å°±æ¯è¯»åINIæ件(æ认为è¿ç§æ¹æ³æç太ä½ï¼æ¯ç«è¦è¯»åæ件ç)ï¼å¦ä¸ï¼
//åå¨HANDLE
struct Tag_STRUCT
{
HWND hWnd;
} ;
struct Tag_STRUCT Struct;
Struct.hWnd = m_hWnd;
//æå
å«å¥æç
ç»æä½åå
¥
iniæ件 WritePrivateProfileStruct("Section","Key",&Struct,sizeof(Struct),"C:\\1.ini");
//读åHANDLE
struct Tag_STRUCT
{
HWND hWnd;
} ;
struct Tag_STRUCT Struct;
//ä»å
å«å¥æçç»æä½çiniæ件读åHANDLE
GetPrivateProfileStruct("Section","Key",&Struct,sizeof(Struct),"C:\\1.ini");