アドレスの値を表示したい

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ROKI

アドレスの値を表示したい

#1

投稿記事 by ROKI » 13年前

指定した16進数のアドレスの値を取得したいのですが、うまくいきません。
例外エラーが発生します。何がいけないのでしょうか。
アドバイスください。

コード:

#include <stdio.h>
#include <iostream>
using namespace std;

void main(){
	cout << *(unsigned char *)0xXXXXXX;
}

アバター
h2so5
副管理人
記事: 2212
登録日時: 15年前
住所: 東京
連絡を取る:

Re: アドレスの値を表示したい

#2

投稿記事 by h2so5 » 13年前

適当なアドレスを指定してどこでもアクセスできるわけではありません。
プロセスから参照できるメモリ領域はOSによって制限されています。

セグメンテーション違反 - Wikipedia

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 15年前
住所: 東海地方
連絡を取る:

Re: アドレスの値を表示したい

#3

投稿記事 by softya(ソフト屋) » 13年前

ポインタ値を参照するのとポインタの先を参照するのでは話が違うということです。
あと任意の数値をポインタとするのはマイコンぐらいでしか使いません。

こうすればポインタ値としては表示されますが、どれほどの意味があるか疑問です。

コード:

#include <iostream>
using namespace std;
 
void main(){
    cout << (void *)0xFFFFF;
} 
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

閉鎖

“C言語何でも質問掲示板” へ戻る