最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言多種獲取字符串長度的方法

 更新時間:2021年07月22日 10:03:07   作者:小果沐雨  
這篇文章主要介紹了C語言多種獲取字符串長度的方法,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下

在C語言中,想要獲取字符串長度可以有很多方法,下面分別介紹

一、使用sizeof()運(yùn)算符

在C語言中,sizeof() 是長度的運(yùn)算符,括號中可以放入數(shù)據(jù)類型或者表達(dá)式,一般我們用來計(jì)算字符串長度。

基本用法:

int i=10;
sizeof(i);//表達(dá)式

char str[]="hello world";
sizeof(str);

sizeof(double);//數(shù)據(jù)類型

在使用sizeof()求字符串長度時,會將 ‘\0' 也計(jì)算到字符串長度中。例如"abcd"用sizeof()求長度會計(jì)算得到5。
注意:char str[100]=""; sizeof(str)的值是100。

二、使用strlen函數(shù)

在string.h中提供了計(jì)算字符串長度的函數(shù)。

語法:

size_t strlen(const char *str);

在使用strlen函數(shù)時,需要添加string.h頭文件,該函數(shù)會將字符串長度計(jì)算出,不包含 ‘\0'。

三、編寫函數(shù)

如果不想使用sizeof()和strlen(),可以利用循環(huán)來判斷字符串的長度。

int get_length(char str[])
{
	char *p = str;
	int count = 0;
	while (*p++ != '\0')
	{
		count++;
	}
	return count;
}

該函數(shù)通過傳入一個字符串,返回一個長度數(shù)值。

測試代碼:

#include <stdio.h>
#include <string.h>

int get_length(char str[])
{
	char *p = str;
	int count = 0;
	while (*p++ != '\0')
	{
		count++;
	}
	return count;
}

int main()
{
	char str[] = "abcd";
	int count1 = sizeof(str);
	int count2 = strlen(str);
	int count3 = get_length(str);
	printf("use sizeof the length is %d\n", count1);
	printf("use strlen the length is %d\n", count2);
	printf("use get_length the length is %d\n", count3);
	return 0;
}

結(jié)果:

在這里插入圖片描述

到此這篇關(guān)于C語言多種獲取字符串長度的方法的文章就介紹到這了,更多相關(guān)C語言獲取字符串長度內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 關(guān)于vector迭代器失效的幾種情況總結(jié)

    關(guān)于vector迭代器失效的幾種情況總結(jié)

    下面小編就為大家?guī)硪黄P(guān)于vector迭代器失效的幾種情況總結(jié)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • C++實(shí)現(xiàn)LeetCode(186.翻轉(zhuǎn)字符串中的單詞之二)

    C++實(shí)現(xiàn)LeetCode(186.翻轉(zhuǎn)字符串中的單詞之二)

    這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(186.翻轉(zhuǎn)字符串中的單詞之二),本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • C++中的動態(tài)規(guī)劃子序列問題分析探討

    C++中的動態(tài)規(guī)劃子序列問題分析探討

    可能有些讀者有接觸過動態(tài)規(guī)劃,可能也有一些讀者以前完全不知道動態(tài)規(guī)劃這個東西,別擔(dān)心,我這篇文章會為讀者做一個入門,好讓讀者掌握這個重要的知識點(diǎn)
    2023-03-03
  • C語言結(jié)構(gòu)體使用之鏈表

    C語言結(jié)構(gòu)體使用之鏈表

    這篇文章主要介紹了C語言結(jié)構(gòu)體使用之鏈表,下面文章主要圍繞結(jié)構(gòu)體的概念和用法、結(jié)構(gòu)體數(shù)組和結(jié)構(gòu)體指針、包含結(jié)構(gòu)體的結(jié)構(gòu)體、結(jié)構(gòu)體搭建鏈表方法、結(jié)構(gòu)體及鏈表在產(chǎn)品應(yīng)用場景等多個主題展開鏈表的相關(guān)資料,需要的小伙伴可以參考一下
    2022-03-03
  • C++ 冒泡排序數(shù)據(jù)結(jié)構(gòu)、算法及改進(jìn)算法

    C++ 冒泡排序數(shù)據(jù)結(jié)構(gòu)、算法及改進(jìn)算法

    冒泡排序是一種簡單排序。這種排序是采用“冒泡策略”將最大元素移到最右邊。在冒泡過程中,相鄰兩個元素比較,如果左邊大于右邊的,則進(jìn)行交換兩個元素。這樣一次冒泡后,可確保最大的在最右邊。然后執(zhí)行n次冒泡后排序即可完畢
    2013-04-04
  • C語言中條件編譯詳解

    C語言中條件編譯詳解

    預(yù)處理程序提供了條件編譯的功能。可以按不同的條件去編譯不同的程序部分,因而產(chǎn)生不同的目標(biāo)代碼文件。這對于程序的移植和調(diào)試是很有用的。條件編譯有三種形式,下面分別介紹。
    2017-05-05
  • c++打印封裝每次打印前面加上時間戳問題

    c++打印封裝每次打印前面加上時間戳問題

    這篇文章主要介紹了c++打印封裝每次打印前面加上時間戳問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • C++ 將字符串值賦給CHAR數(shù)組的實(shí)現(xiàn)

    C++ 將字符串值賦給CHAR數(shù)組的實(shí)現(xiàn)

    這篇文章主要介紹了C++ 將字符串值賦給CHAR數(shù)組的實(shí)現(xiàn),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • c語言conio.h基本知識點(diǎn)總結(jié)

    c語言conio.h基本知識點(diǎn)總結(jié)

    在本篇文章里小編給大家分享的是關(guān)于c語言conio.h是什么意思的相關(guān)知識點(diǎn),需要的朋友們可以學(xué)習(xí)參考下。
    2020-02-02
  • 實(shí)例講解C++編程中的虛函數(shù)與虛基類

    實(shí)例講解C++編程中的虛函數(shù)與虛基類

    這篇文章主要介紹了C++編程中的虛函數(shù)與虛基類的實(shí)例講解,虛函數(shù)與虛基類的使用是C++入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下
    2016-02-02

最新評論

广平县| 睢宁县| 德阳市| 乡城县| 宜良县| 渝北区| 稷山县| 红河县| 曲周县| 林西县| 老河口市| 彭山县| 定州市| 缙云县| 曲阳县| 宁武县| 宜兰市| 勃利县| 盐边县| 翁源县| 咸阳市| 通渭县| 浮梁县| 鸡东县| 博罗县| 油尖旺区| 来凤县| 镇雄县| 肥城市| 新乡县| 邹平县| 墨竹工卡县| 自治县| 新平| 会理县| 开阳县| 定西市| 元朗区| 盐亭县| 北辰区| 综艺|