亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解C++中十六進制字符串轉數字(數值)

發布時間:2020-09-05 15:47:32 來源:腳本之家 閱讀:347 作者:lqh 欄目:編程語言

詳解C++中十六進制字符串轉數字(數值)

主要有兩個方法,其實都是對現有函數的使用: 

方法1: sscanf()  

函數名: sscanf
功  能: 從字符串格式化輸入
用  法: int sscanf(char *string, char *format[,argument,...]); 

以上的 format 為 %x 就是將字符串格式化為 16 進制數 

例子: 

#include <stdio.h>  
void main()  
{  
  char* p = "0x1a";   
  int nValude = 0;     
  sscanf(p, "%x", &nValude);   
  printf("%d\r\n", nValude); 
} 

輸出:  

  26

 方法2: strtol() 

函數名: strtol
功  能: 將字符串轉換為長整數
用  法: long strtol(char *str, char **endptr, int base); 

上面的base就是我們要轉換為幾進制數

例子: 

#include <stdio.h>  
#include <stdlib.h>  
void main()  
{  
  char* p = "0x1b";   
  char* str;   
  long i = strtol(p, &str, 16);
  printf("%d\r\n", i);
 }  
 

輸出:

  27  

其實還有一種方法,就是用一個初始化為0~9~a~f的字符串數組,也就是一個十六進制對應表,用這個對應表即可算出一個十六進制字符串的數值,但這種發發太麻煩了,不推薦使用。

如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

福泉市| 从化市| 阳谷县| 伽师县| 大荔县| 宁津县| 玉屏| 句容市| 柏乡县| 百色市| 介休市| 余庆县| 内丘县| 松江区| 南江县| 台北市| 济宁市| 广河县| 乌兰浩特市| 蕲春县| 许昌市| 黄冈市| 德惠市| 乡宁县| 白沙| 德钦县| 柳江县| 尉氏县| 军事| 民勤县| 杭州市| 关岭| 寿光市| 南陵县| 嘉峪关市| 荥阳市| 疏勒县| 连平县| 武强县| 虞城县| 广元市|