中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

低價網(wǎng)站建設(shè)哪家便宜seo關(guān)鍵詞優(yōu)化公司

低價網(wǎng)站建設(shè)哪家便宜,seo關(guān)鍵詞優(yōu)化公司,字體在線生成器,濟南城鄉(xiāng)建設(shè)委員會官網(wǎng)前言 本篇文章記錄的是一些關(guān)于string的補充說明 string與const char*之間的相互轉(zhuǎn)換 const char* 轉(zhuǎn)換成string 在C中存在著從const char到string的隱式類型轉(zhuǎn)換,換句話說,如果一個函數(shù)的參數(shù)類型是string類,直接傳入const char類型的參…

前言

本篇文章記錄的是一些關(guān)于string的補充說明

string與const char*之間的相互轉(zhuǎn)換

const char* 轉(zhuǎn)換成string

在C++中存在著從const char到string的隱式類型轉(zhuǎn)換,換句話說,如果一個函數(shù)的參數(shù)類型是string類,直接傳入const char類型的參數(shù)是沒問題的

const char* cstr = "demo";
string str(cstr);

string與const char*的轉(zhuǎn)換

在傳入?yún)?shù)時i,有時我們傳入string在編譯時是會報錯的,所以我們就需要傳入const char* 類型

我們可以使用成員函數(shù)c_str(),來返回string對應(yīng)的char數(shù)組

string str = "demo";
const char* cstr = str.c_str();

并且,在進行文件讀寫的時候,使用const char* 比使用string更安全
因為,string是會自動分配內(nèi)存的,其內(nèi)部的存儲方式是不可見的
而const char*類型是整存整取的,或者也可以自己手動存入每一部分

注意

為了修改string字符串的內(nèi)容,下標訪問操作符[]和函數(shù)at都會返回字符串中某個字符的引用,但當字符串的內(nèi)存被重新分配之后,可能會發(fā)生錯誤

此處給出一個例子(string內(nèi)部的內(nèi)存分配機制)方便理解:
字符串str中有十個元素,當我想往里面復(fù)制11個元素時,先復(fù)制了10個元素,在放第十一個元素的時候,原字符串不夠放,那就會在堆區(qū)的另一個地方找一個更大的位置,比如找了一個能存放20個元素的位置,
首先,會之前存儲的10個元素拷貝到新的空間里,之后再將第11個元素存儲到后面,最后將之前存儲10個元素的空間釋放掉

那么,當我想通過之前的引用找到原來對應(yīng)的字符時,就會發(fā)生未知的錯誤

大小寫轉(zhuǎn)換

在C語言中,我們只能通過循環(huán)來改變每個字符,利用ASCII碼值或者toupper/tolower函數(shù)將其轉(zhuǎn)換成大寫或小寫

而使用STL的話,一行就能解決這個問題
在STL算法庫中,已經(jīng)將這種遍歷修改的過程進行了封裝
我們可以直接復(fù)用:

transform(str.begin, str.end(), str.begin(), toupper);
//字符串轉(zhuǎn)大寫transform(str.begin(), str.end(), str.begin(), tolower);
//字符串轉(zhuǎn)小寫

這里面的算法就是transform算法,包含四個參數(shù)
前兩個參數(shù)是源容器的首未迭代器
第三個參數(shù)是目標容器的首迭代器
第四個參數(shù)是函數(shù)指針,也就是要執(zhí)行的操作

之后會有對于迭代器的解釋和學習,在這里會用就行

字符串和數(shù)字之間的轉(zhuǎn)換

實數(shù)轉(zhuǎn)字符串

在C++11新標準中,提供了全局函數(shù)std::to_string
可以將類型轉(zhuǎn)換成string類型

下面給出一些例子
將帶符號 / 不帶符號整數(shù)和實數(shù)轉(zhuǎn)換成字符串

string to_string(int val);string to_string(long val);string to_string(long long val);string to_string(unsigned int 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);

字符串轉(zhuǎn)實數(shù)

int stoi(const string& str, size_t* idx = 0; int base = 10);long stol(const string& str, size_t* idx = 0, int base = 10);long long stoll(const string& str, size_t* idx = 0, int base = 10);

補充說明

1.

idx返回字符串中第一個非數(shù)字的位置,即數(shù)值部分的結(jié)束位置

2.

base為進制,10就是10進制,8就是8進制

3.

該組函數(shù)會自動保留符號和自動去除前導0

C風格字符數(shù)組轉(zhuǎn)換成實數(shù)

在C語言中,也提供了一些函數(shù)來幫助我們將字符數(shù)組轉(zhuǎn)換成實數(shù)

int atoi(const char* str);long atol(const char* str);long longstoll(const char* str);double atof(const char* str);

注意:
atof函數(shù)中的f指的是浮點數(shù)(包含float、double、long double類型),atof函數(shù)的返回類型是double

結(jié)語

關(guān)于string的補充說明到這里就結(jié)束了,
之后我會出一些刷題的筆記以及C++相關(guān)知識的學習和介紹

我們下篇文章見~

http://www.risenshineclean.com/news/54494.html

相關(guān)文章:

  • 公司手機網(wǎng)站制作網(wǎng)站外鏈優(yōu)化方法
  • seo工作內(nèi)容有哪些北京百度seo服務(wù)
  • 湖北網(wǎng)站seo設(shè)計seopeix
  • 彩視網(wǎng)站建設(shè)策劃sem是什么品牌
  • 東莞建筑設(shè)計公司排名怎么做網(wǎng)站優(yōu)化
  • 鄭州漢獅做網(wǎng)站報價開魯網(wǎng)站seo轉(zhuǎn)接
  • 外管局網(wǎng)站做延期收匯報告企業(yè)網(wǎng)站建設(shè)案例
  • 網(wǎng)站建設(shè)深圳公司北京網(wǎng)絡(luò)優(yōu)化
  • 南寧網(wǎng)站推廣方案如何做免費長尾詞挖掘工具
  • 安美東莞網(wǎng)站建設(shè)東莞seo網(wǎng)絡(luò)營銷
  • Spring做網(wǎng)站和什么內(nèi)容企業(yè)推廣
  • 有哪些網(wǎng)站是做采購招標的優(yōu)化網(wǎng)站推廣教程排名
  • 外國黃色網(wǎng)站今日預(yù)測足球比分預(yù)測
  • 做爰全過程網(wǎng)站seo實戰(zhàn)技術(shù)培訓
  • 專做網(wǎng)站app拉新推廣賺傭金
  • 網(wǎng)頁游戲排行榜3d商丘網(wǎng)站優(yōu)化公司
  • 做動圖素材網(wǎng)站百度知道首頁登錄入口
  • 新服務(wù)器做網(wǎng)站高端婚戀網(wǎng)站排名
  • wordpress小程序調(diào)用seo關(guān)鍵詞排名優(yōu)化銷售
  • 靜態(tài)網(wǎng)站制作模板代寫文章
  • 用什么軟件做介紹視頻網(wǎng)站怎么樣推廣自己的網(wǎng)址
  • 自己怎么做獨立網(wǎng)站整站排名服務(wù)
  • 羅湖做網(wǎng)站多少錢域名搜索
  • 學做海報的網(wǎng)站朋友圈網(wǎng)絡(luò)營銷
  • 學歷網(wǎng)站怎么做seo搜索引擎優(yōu)化營銷案例
  • 同里做網(wǎng)站網(wǎng)絡(luò)推廣員好做嗎
  • 哪個網(wǎng)站可以做印章圖案鄭州網(wǎng)絡(luò)營銷排名
  • 中國建設(shè)教育網(wǎng)站職業(yè)技術(shù)培訓
  • 外貿(mào)網(wǎng)站建設(shè)公司如何網(wǎng)上營銷
  • 網(wǎng)站后臺管理系統(tǒng)開發(fā)快手作品推廣網(wǎng)站