質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Q&A

4回答

530閲覧

a~dに関する型とサイズ、アドレスの関係について教えてください。

退会済みユーザー

退会済みユーザー

総合スコア0

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

1グッド

0クリップ

投稿2021/11/30 01:12

以下のプログラムについてa~dの型とサイズを教えてください。アドレスの関係についてもお願いします。

#include <stdio.h>
int main(void)
int a = 10;
float b = 20.2;
double c = 30.3;
int d = 40;
printf("a = %d, b = %f, c = %if, d = %dln", a, b, c, d);
printf("&a = %x, &b = %x, &c = %x, &d = Ixln", &a, &b, &c,
&d);

hono112👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

BeatStar

2021/11/30 01:16

なんで調べようとすらしない? それに型名は基礎がわかっていれば普通にわかるはず。そんなに努力したくないならやめた方がいいです。課題なら白紙で出しましょう。 『痩せたいのですが、運動したくありません。誰か運動してください』みたいな甘ったれと一緒です。
guest

回答4

0

ヒント:サイズは誰にもわからない

投稿2021/11/30 01:44

WoodenHamlet

総合スコア306

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

int が 2byte 以上であるのは決まっています。
がま違いだったので修正したかったんだができない(^^;
ま、いいか。

投稿2021/11/30 15:22

PingHermit

総合スコア478

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

型は、それぞれ宣言してある行の一番左側に書いてある型です。

各変数の大きさは配列ではないので、各型の大きさになります。
大きさは、sizeof 演算子で計算できます。
Cコンパイラによって大きさは異なるので、
実際に演算して表示させる方がいいでしょう。
また、オプションによっても変えることができる事もあります。
int が 2byte 以上であるのは決まっています。

ポインタは、まず表示は %x ではなく、%p を使いましょう。
%x は、int や、unsigned int を表示するための書式ですから、
表示しきれないことがあります。

アドレスの関係について仕様上の決まりはありません。
実際のコンパイラでも、
実行毎にアドレスが変わる様なものもあれば、毎回全く変わらない物もあります。
確保領域の位置関係について、
最初に宣言された領域から宣言された順に順次確保するようなコンパイラもあれば、
同じ型を近くにまとめて確保割当するコンパイラや、
サイズの大きい順とかで確保割当するコンパイラもあります。

投稿2021/11/30 15:16

PingHermit

総合スコア478

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

There are some mistakes in your code.
e.g. format specifier for address value is "%p", not "%x".

You typed these types in your code.
Therefore, there is no question.

サイズ

As regards size, you can display it and check it, I think.
What is the problem?

アドレスの関係

I can't understand what you say.
What kind of story is needed?

投稿2021/11/30 02:30

fana

総合スコア11996

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fana

2021/11/30 02:36 編集

> You typed these types type を type って書いてみたかっただけ. (雰囲気だけで書いてるので English としては全くまともじゃないと思う.誰か校閲プリーズ)
fana

2021/11/30 02:40

> format specifier for address value は正しいのだろうか?(C的な意味で) for pointer type と言うべきなのだろうか?
fana

2021/11/30 03:46 編集

低評価の理由は何か? 内容に問題があるからのか それとも 英語文法的なミスが許せないのか その他なのか ぜひとも明確にしていただきたいですな. 「日本語のサイトなんだから日本語で書けや」みたいな真っ当な指摘すら全くなされない不思議.
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問