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

關(guān)于c語言中輸出字符指針的相關(guān)問題

 更新時(shí)間:2022年07月20日 14:09:11   作者:littesss  
這篇文章主要介紹了關(guān)于c語言中輸出字符指針的相關(guān)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

c語言輸出字符指針問題

例如定義一個(gè) char * p = "hello";的字符指針

首先搞清楚在c語言中沒有字符串的類型,所以對(duì)字符串操作,有兩種形式:可以用字符指針(為什么不叫字符串指針,我個(gè)人覺得,字符指針針對(duì)的是單個(gè)字符的操作,即指針操作,所以就叫它字符指針吧。。。)

或者字符串?dāng)?shù)組(這里不在討論字符串相關(guān)問題,前面博客有討論過)這里的指針變量p,系統(tǒng)會(huì)為其重新分配內(nèi)存。

"talk is cheap , please show me your code"

說多無用,放碼過來

有人會(huì)問,p不是指針變量嗎?但是為什么printf("%s",p)他為什么打印的不是地址?

答:

是的p肯定是指針變量,它也一定是地址,但是別忘了在C語言中,系統(tǒng)都會(huì)默認(rèn)在字符串末給我們加上\0用于結(jié)束字符串,所以用printf()輸出時(shí)候,只要你打印格式是%s,系統(tǒng)知道我們要輸出字符串,而且系統(tǒng)也可以確定字符串的長(zhǎng)度,所以當(dāng)你用%s打印字符指針p的時(shí)候就會(huì)輸出字符串,如果你是以地址打印格式輸出的話,系統(tǒng)就會(huì)給我們打印出地址, 如果你是解指針(*p),那么系統(tǒng)就取p指針指向的內(nèi)容,此時(shí)看你自己以什么格式輸出,就用什么格式打印。

注意:

在字符指針中p 、*p 和&p的區(qū)別:p是指針變量指向字符串首元素(前提對(duì)p指針沒有進(jìn)行指針操作),p中存放首元素的地址(一旦被初始化就,系統(tǒng)就為我們分配好了地址,而且地址也不能改變,因?yàn)樽址羔樖且粋€(gè)只讀變量,你不能企圖對(duì)一個(gè)初始化好的指針進(jìn)行內(nèi)部修改),而*p是對(duì)指針變量p進(jìn)行解引用操作,也就是指針?biāo)赶虻膬?nèi)容,而&p是對(duì)指針變量取地址,所以也就肯定不會(huì)和p的值相等,因?yàn)樽址羔樝到y(tǒng)會(huì)為其分配內(nèi)存,p的值是字符串首元素的地址。

c語言指針求字符串長(zhǎng)度

int stren(char* str){
	char* start=str;
	char* end=str;
	while(*end!='\0'){
		end++;
	}
	return end-start;
}
#include<stdio.h>
int main(){
	char arr[]="bit";
	int len=stren(arr);
	printf("%d\n",len);
return 0;
}

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • VS2019 更新MSDN并創(chuàng)建快捷方式的實(shí)現(xiàn)

    VS2019 更新MSDN并創(chuàng)建快捷方式的實(shí)現(xiàn)

    這篇文章主要介紹了VS2019 更新MSDN并創(chuàng)建快捷方式的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • C++中繼承與組合的區(qū)別詳細(xì)解析

    C++中繼承與組合的區(qū)別詳細(xì)解析

    C++的“繼承”特性可以提高程序的可復(fù)用性。正因?yàn)椤袄^承”太有用、太容易用,才要防止亂用“繼承”
    2013-09-09
  • C/C++實(shí)現(xiàn)遍歷文件夾最全方法總結(jié)

    C/C++實(shí)現(xiàn)遍歷文件夾最全方法總結(jié)

    這篇文章主要為大家介紹了C/C++實(shí)現(xiàn)遍歷文件夾功能的最全方法總結(jié),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-09-09
  • C語言中函數(shù)與指針的應(yīng)用總結(jié)

    C語言中函數(shù)與指針的應(yīng)用總結(jié)

    本篇文章是對(duì)C語言中函數(shù)與指針的應(yīng)用進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C語言編寫實(shí)現(xiàn)學(xué)生管理系統(tǒng)

    C語言編寫實(shí)現(xiàn)學(xué)生管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C語言編寫實(shí)現(xiàn)學(xué)生管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • C++中set/multiset容器詳解(附測(cè)試用例與結(jié)果圖)

    C++中set/multiset容器詳解(附測(cè)試用例與結(jié)果圖)

    set/multiset屬于關(guān)聯(lián)式容器,底層結(jié)構(gòu)是用二叉樹實(shí)現(xiàn),下面這篇文章主要給大家介紹了關(guān)于C++中set/multiset容器的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-02-02
  • C語言中野指針和空指針的區(qū)別

    C語言中野指針和空指針的區(qū)別

    本文主要介紹了野指針和空指針的概念、用途、原理,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11
  • c++ 深入理解歸并排序的用法

    c++ 深入理解歸并排序的用法

    歸并排序是典型分治思想的代表——首先把原問題分解為兩個(gè)或多個(gè)子問題,然后求解子問題的解,最后使用子問題的解來構(gòu)造出原問題的解
    2022-03-03
  • C++中封裝與信息隱藏的詳解及其作用介紹

    C++中封裝與信息隱藏的詳解及其作用介紹

    這篇文章主要介紹了C++中封裝與信息隱藏的詳解及其作用介紹,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • c++編程學(xué)習(xí)的技巧總結(jié)

    c++編程學(xué)習(xí)的技巧總結(jié)

    在本篇文章里小編給大家分享了關(guān)于c++編程學(xué)習(xí)的技巧以及知識(shí)點(diǎn)總結(jié),需要的朋友們學(xué)習(xí)下。
    2019-03-03

最新評(píng)論

伊吾县| 墨脱县| 泉州市| 来安县| 北京市| 攀枝花市| 五原县| 金湖县| 瑞安市| 榆中县| 浙江省| 高阳县| 达拉特旗| 兴安盟| 华池县| 阳曲县| 股票| 龙海市| 鄂尔多斯市| 邯郸县| 英超| 祁连县| 苗栗县| 大竹县| 唐河县| 满洲里市| 凉山| 平陆县| 察雅县| 互助| 黔西县| 广元市| 枣阳市| 天长市| 江油市| 湖州市| 嘉善县| 东辽县| 靖边县| 旌德县| 玛多县|