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

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

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

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

C++/CLI

C++/CLIは、.NET Frameworkの共通言語基盤であるCLI向けにC++を拡張したプログラム言語です。前身のC++マネージ拡張と比較するとシンプルで分かりやすい構文になっており、高い可読性を持ちます。

Visual C++

Microsoft Visual C++はWindowsのCとC++の統合開発環境(IDE)であり、コンパイラやデバッガを含んでいます。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

2回答

2157閲覧

c++で特定の変数の値を複数のファイルで扱う方法

santaro

総合スコア18

C

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

C++/CLI

C++/CLIは、.NET Frameworkの共通言語基盤であるCLI向けにC++を拡張したプログラム言語です。前身のC++マネージ拡張と比較するとシンプルで分かりやすい構文になっており、高い可読性を持ちます。

Visual C++

Microsoft Visual C++はWindowsのCとC++の統合開発環境(IDE)であり、コンパイラやデバッガを含んでいます。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2019/07/20 16:41

c++で、ヘッダーファイル("global.h")に記述された変数とその値を、別の複数のファイル("A.cpp", "B.cpp")の両方で参照できて、かつ"global.h"内の変数の値を書き換えることはできますか?
この場合はstatic、typedefなどを使うのでしょうか?

global.h

c++

1float test1 = 0.9f; 2float test2 = 0.3f; 3float test3 = 0.1f;

このglobal.hの値を"A.cpp"、"B.cpp"で参照していて、"A.cpp"内で"global.h"のtest1 = 0.9fの値をtest1 = 0.8fに書き換える(代入する)と、"B.cpp"でも自動的にtest1の値は0.8fとして参照できる。

みたいなことはglobal.h、A.cpp、B.cppともにどのように記述すればよいでしょうか?

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

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

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

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

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

guest

回答2

0

C++17 以降で、ヘッダーファイルに記述するならinline変数にする手もあります。
global.h を

c++

1inline float test1 = 0.9f; 2inline float test2 = 0.3f; 3inline float test3 = 0.1f;

とすれば、A.cpp、B.cpp でインクルードして使えます。

投稿2019/07/21 02:55

Bull

総合スコア986

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

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

guest

0

通常はヘッダファイルにはextern float test1;などとして、他の~.cファイルに定義します。それによってヘッダファイルをincludeした〜.cファイル全てから参照・更新が可能です。
・・
「追記」
ヘッダファイルに実データを記述することは止めましょう。リンクエラーになります。
C言語のグローバル変数とexternについて

投稿2019/07/20 16:54

編集2019/07/20 17:01
cateye

総合スコア6851

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問