找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 1479|回復(fù): 5
打印 上一主題 下一主題
收起左側(cè)

C語(yǔ)言整形地址是十六進(jìn)制;字符型地址不是十六進(jìn)制?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:28942 發(fā)表于 2024-3-3 19:26 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
#include <iostream>
using namespace std;
int main(){
//char b = 'k';
int  b =5;
//char* p ;
int* p ;
p =&b;//
cout << "b = " << b << endl;  //輸出K
cout << "&b = " << &b << endl;//輸出K??
cout << "p = " << p << endl; //輸出K??
cout << "*p=" << *p << endl; //輸出K
}

第一問題:內(nèi)存中的字符型地址是什么?、第二問題:整形是四個(gè)字節(jié),程序輸出一個(gè)十六進(jìn)制數(shù),內(nèi)存地址如何分配的?
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:883242 發(fā)表于 2024-3-3 21:59 | 只看該作者
第一問題:所有類型地址都一樣。第二問題:內(nèi)存地址是OS分配的,不與其他應(yīng)用程序發(fā)生沖突。
回復(fù)

使用道具 舉報(bào)

板凳
ID:28942 發(fā)表于 2024-3-4 07:41 | 只看該作者
Hephaestus 發(fā)表于 2024-3-3 21:59
第一問題:所有類型地址都一樣。第二問題:內(nèi)存地址是OS分配的,不與其他應(yīng)用程序發(fā)生沖突。

第一問題,若把字符型改為整形輸出的地址是0×22fe34,是十六進(jìn)制數(shù),

#include <iostream>
using namespace std;
int main(){
int  b =5;
int* p ;
p =&b;//
cout << "b = " << b << endl;  //輸出K
cout << "&b = " << &b << endl;//輸出K??
cout << "p = " << p << endl; //輸出K??
cout << "*p=" << *p << endl; //輸出K
}
若改為字符型,就輸出K??,不是十六進(jìn)制數(shù)了呢?如上面程序輸出還自帶個(gè)問號(hào)。
第二問題,若改為整形后,應(yīng)該占四個(gè)字節(jié),地址也應(yīng)該是四個(gè)地址,這里怎么只輸出一個(gè)地址呢?難道是首地址?另外三個(gè)地址遞增1,是嗎?
回復(fù)

使用道具 舉報(bào)

地板
ID:883242 發(fā)表于 2024-3-5 15:13 | 只看該作者
都是二進(jìn)制存儲(chǔ)的,是否顯示十六進(jìn)制是iomanip的內(nèi)容,你沒有包含。
回復(fù)

使用道具 舉報(bào)

5#
ID:844772 發(fā)表于 2024-3-6 08:42 | 只看該作者
這個(gè)不是C的問題,而是計(jì)算機(jī)原理的問題。
回復(fù)

使用道具 舉報(bào)

6#
ID:28942 發(fā)表于 2024-3-6 11:17 | 只看該作者
Hephaestus 發(fā)表于 2024-3-5 15:13
都是二進(jìn)制存儲(chǔ)的,是否顯示十六進(jìn)制是iomanip的內(nèi)容,你沒有包含。

感謝回復(fù),但是 加了   #include <iomanip>  還是沒出現(xiàn)十六進(jìn)制地址
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表