您好,登錄后才能下訂單哦!
使用C/C++怎么將字符串與數字進行互轉?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
C數字轉字符串
int sprintf(char *str, const char *format, ...); char c[10]; sprintf(c, "%d", 15); // 將整數轉換成字符串 //浮點數轉字符串,number為要轉換的數,ndigit表示要轉換的位數 char *gcvt(double number, int ndigit, char *buf); //浮點數轉字符串,number為要轉換的數,ndigit表示要轉換的位數, decpt和sign為輸出參數,decpt為小數點位 //數,sign為符號。返回轉換后的字符串,不含符號和小數點。 char *ecvt(double number, int ndigits, int *decpt, int *sign); //fcvt與ecvt不同在于fcvt的ndigit參數表示小數點后的長度 char *fcvt(double number, int ndigits, int *decpt, int *sign);
C字符串轉數字
int sscanf(const char *str, const char *format, ...); char str[] = "15.455"; int i; float fp; sscanf( str, "%d", &i ); // 將字符串轉換成整數 i = 15 sscanf( str, "%f", &fp ); // 將字符串轉換成浮點數 fp = 15.455000 int atoi(const char *nptr); long atol(const char *nptr); long long atoll(const char *nptr); double strtod(const char *nptr, char **endptr); float strtof(const char *nptr, char **endptr); long double strtold(const char *nptr, char **endptr); long int strtol(const char *nptr, char **endptr, int base); long long int strtoll(const char *nptr, char **endptr, int base); unsigned long int strtoul(const char *nptr, char **endptr, int base); unsigned long long int strtoull(const char *nptr, char **endptr, int base);
C++字符串轉數字
C++11增加std::stoi/stol/stoll等等函數可以 轉換
C++數字轉字符串
C++11增加了全局函數std::to_string,以及std::stoi/stol/stoll等等函數
string to_string (int val); string to_string (long val); string to_string (long long val); string to_string (unsigned val); string to_string (unsigned long val); string to_string (unsigned long long val); string to_string (float val); string to_string (double val); string to_string (long double val)
string和char *互轉
string轉char *或char []
//1. 調string的data函數 string s = "abc"; //data函數不會加結束符'\0' c_str會加 char *p = s.data(); //2. 調string的c_str函數 string s = "abc"; char *p = s.c_str(); //3. 調string的copy函數 string s = "abc"; char p[10]; s.copy(p, 3, 0); //復制3個字符,從0位置開始 p[3] = '\0'; //需要手動加結束符
char *或char []轉string
string s; char *p = "123"; s = p; //直接復制即可
關于使用C/C++怎么將字符串與數字進行互轉問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。