• 正文
    • 1、strlen,sizeof
    • 2、scanf
  • 推薦器件
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

strlen,sizeof,scanf對(duì)字符串計(jì)算

2024/04/15
1855
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

1、strlen,sizeof

strlen,sizeof都可以對(duì)字符串長(zhǎng)度進(jìn)行計(jì)算

char test[]= “hello” ? ? ? ? 這種雙引號(hào)字符串后面默認(rèn)是有個(gè) ?空字符

sizeof (test) ? ? ? ? ?為6

strlen (test) ? ? ? ? ? 為5

sizeof:可用于任何變量名、類型名或常量值,當(dāng)用于變量名(不是數(shù)組名)或常量時(shí),不需要加括弧。

strlen:從內(nèi)存的某個(gè)位置(可以是字符串開頭,中間某個(gè)位置,甚至是某個(gè)不確定的內(nèi)存區(qū)域)開始掃描,直到碰到第一個(gè)字符串結(jié)知束符''為止,然后返回計(jì)數(shù)器值。

sizeof 可以用類型做參數(shù),strlen 只能用 char* 做參數(shù),且必須是以 結(jié)尾的。數(shù)組做sizeo的參數(shù)不退化,傳遞給strlen就退化為指針了。

sizeof是在編譯的時(shí)候生效的,strlen是函數(shù),在運(yùn)行時(shí)生效。

2、scanf

scanf是從標(biāo)準(zhǔn)輸入設(shè)備獲取數(shù)據(jù)。以串口為例,使用串口助手發(fā)送數(shù)據(jù)的話,需要勾選發(fā)送新行。

scanf在讀取輸入的時(shí)候,分為多種情況:

一、讀取字符串的時(shí)候(%s)

scanf會(huì)讀取除了空白字符以外的所有字符,并在讀取到第一個(gè)空白字符時(shí)結(jié)束讀取,將空白字符之后的所有字符都暫存在緩沖區(qū)中。除非緩沖區(qū)被刷新或者字符被讀取走,否則將一直停留在緩沖區(qū)中。對(duì)%s來說,回車和空格都是當(dāng)前函數(shù)的結(jié)束字符

二、讀取字符的時(shí)候(%c )

scanf會(huì)讀取所有字符包括空白字符。但是他會(huì)在讀取到第一個(gè)空白字符后結(jié)束讀取。將空白字符之后的所有字符都暫存在緩沖區(qū)中。

三、讀取除了字符和字符串以外的所有輸入的時(shí)候

scanf函數(shù)每次讀取一個(gè)字符,跳過所有的空白字符,直到遇到第一個(gè)非空白字符的時(shí)候才開始讀取。

scanf是一個(gè)阻塞函數(shù),如果沒有獲取到數(shù)據(jù),就會(huì)一直等待這個(gè)要注意。

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
AT24CM01-SHD-B 1 Microchip Technology Inc IC EEPROM 1MBIT 1MHZ 8SOIC

ECAD模型

下載ECAD模型
$2.2 查看
LTC6993IS6-1#TRMPBF 1 Linear Technology LTC6993 - TimerBlox: Monostable Pulse Generator (One Shot); Package: SOT; Pins: 6; Temperature Range: -40°C to 85°C
$2.16 查看
NC7SZ125M5X 1 Texas Instruments LVC/LCX/Z SERIES, 1-BIT DRIVER, TRUE OUTPUT, PDSO5, PLASTIC, SOT-23, 5 PIN
$0.37 查看

相關(guān)推薦

  • 在LPC55S69上實(shí)現(xiàn)的秘鑰系統(tǒng)
    方案
    1811
    2024/07/25
  • 基于單片機(jī)proteus仿真的設(shè)計(jì)作業(yè)3個(gè)實(shí)驗(yàn)串口、并口、定時(shí)器(仿真圖、源代碼)
    方案
    1047
    2024/07/25
  • 基于單片機(jī)proteus仿真的串口和計(jì)算機(jī)通信系統(tǒng)設(shè)計(jì)(仿真圖、源代碼、講解視頻)
    方案
    1477
    2024/07/25
  • 基于單片機(jī)proteus仿真的風(fēng)光互補(bǔ)充電管理系統(tǒng)設(shè)計(jì)(AD原理圖、仿真圖、源代碼、講解視頻
    方案
    2526
    2024/07/18