第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

問個(gè)菜鳥問題?

問個(gè)菜鳥問題?

C C++
_小松 2016-09-16 12:37:20
char *p="aaaaaa";printf("%s",p);輸出:aaaaaa就想問 不是說p中裝的是地址嗎 為啥我沒加*直接輸出 得到的不是地址而是字符串??請(qǐng)賜教!
查看完整描述

4 回答

已采納
?
Must_so

TA貢獻(xiàn)11條經(jīng)驗(yàn) 獲得超18個(gè)贊

你可以去看看《編譯原理》

printf輸出字符串是這樣,對(duì)著那個(gè)地址的字符一直讀,直到遇到'\0'

你可能以為printf("%s");這樣的語句是錯(cuò)誤的,但實(shí)際上是可以編譯的。

給你玩一段代碼:

#include<iostream>
#include<cstdio>
using?namespace?std;
int?main()
{
	char?s[100];
	scanf("%s",s);
	printf("%s");
	return?0;
}

運(yùn)行結(jié)果是這樣的:

http://img1.sycdn.imooc.com//57dca5e70001f9b701320063.jpg

而當(dāng)你將scanf改成用gets輸入則會(huì)出錯(cuò),這個(gè)涉及到scanf等函數(shù)的返回地址和printf的原理

之前一學(xué)長給講過但是如果不懂編譯原理的話也只是記住了而不懂。

如果實(shí)在好奇可以去看編譯原理。

查看完整回答
反對(duì) 回復(fù) 2016-09-17
?
樹莓酒

TA貢獻(xiàn)3條經(jīng)驗(yàn) 獲得超1個(gè)贊

我看有的書上是這么寫的:p雖為指向字符串的指針,但它仍是字符串的名稱,因此這里可以不使用間接運(yùn)算符*。

查看完整回答
反對(duì) 回復(fù) 2016-09-17
?
椰蓉罐頭

TA貢獻(xiàn)19條經(jīng)驗(yàn) 獲得超4個(gè)贊

%s就是輸出字符串的啦~

查看完整回答
反對(duì) 回復(fù) 2016-09-17
?
BlueCode

TA貢獻(xiàn)2條經(jīng)驗(yàn) 獲得超0個(gè)贊

%s就是輸出字符串啊!!

查看完整回答
反對(duì) 回復(fù) 2016-09-16
  • 4 回答
  • 0 關(guān)注
  • 1976 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)