No.4ベストアンサー
- 回答日時:
まさか, 「実体を定義していない」というオチはないよなぁ....
すみません、そのまさかでした;
値を入れる関数を通過したあとでexternしたら普通にできました;
externする場合、一番初めに宣言しなければならないと思い込んで
値入れられないけどタグ名付けたし、ここで呼ぶしか・・等と考えてしまって
やらかしてたみたいです。 orz
そして 構造体 extern のキーワードで検索して見て回ってたサイトは
きっと別の情報だったのですね・・。
お騒がせして申し訳ありませんでした。
無事解決できました。有難うございました。 っ_ _)っ
No.3
- 回答日時:
構造体の定義そのものをexternとかしてるんじゃないですよね
何に対してexternを付けられるのかわかってますか
この回答への補足
すみません、
「構造体の配列」にexternをつけるとエラーが出てしまいます。
extern struct panel panels[35];
このようにすると
error LNK2001: 外部シンボル ""struct panel * panels" (?panels@@3PAUpanel@@A)" は未解決です。
error LNK1120: 外部参照 1 が未解決です。
とエラーが出てしまいます。
No.2
- 回答日時:
別に構造体が「特別なやり方をしないとダメ」ということはないです. もちろんその変数の型がわからないといけないんですが, ちゃんと構造体を定義しておけば extern できます.
例えば, ヘッダに
struct some_struct {
int member1;
double member2;
char *member3;
};
extern some_struct a_struct;
とあれば, これを #include したファイルで a_struct を使うことができます.
No.1
- 回答日時:
>普通の変数、配列のexternはできているのですが、
>構造体をexternができずに困っています。
どんなソースコードを書いたときに、
普通の変数や配列ではできたことが
構造体ではできないのでしょうか?
構造体だからといって特別扱いする必要はないです。
「構造体の配列」にexternをつけるとエラーが出てしまいます。
extern struct panel panels[35];
このようにすると
externが無ければ正常に動くのですが、
error LNK2001: 外部シンボル ""struct panel * panels" (?panels@@3PAUpanel@@A)" は未解決です。
error LNK1120: 外部参照 1 が未解決です。
とエラーが出てしまいます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- C言語・C++・C# C言語初心者 構造体 課題について 1 2023/03/10 19:30
- 哲学 構造主義的宇宙論 1 2022/06/22 22:18
- 生物学 至急です カメレオンやカエルなど、体色変化の特徴を持つ動物の皮膚構造・構造式等がわかれば教えてくださ 1 2022/08/24 02:05
- 大学受験 英語長文 の勉強法 手順を教えて頂きたいです。 <普段のやり方> 解く 20分 ↓ 分からなかった単 1 2022/11/01 12:23
- DIY・エクステリア 戸建て2階部分のフローリング補強について 3 2023/03/21 01:08
- 大学受験 英語長文 の勉強法 手順を教えて頂きたいです。 <普段のやり方> 解く 20分 ↓ 分からなかった単 2 2022/11/01 13:36
- 哲学 説得力を修辞の巧みさまたは論理の強さの2つに分析するにはどうすると良いでしょうか? 0 2022/07/20 05:46
- 数学 【大至急】数学のレポートの問題なんですが分からないので是非教えていただきたいです!本当にお願いします 5 2022/07/25 06:52
- その他(IT・Webサービス) ホームページにカウント数を表示する 2 2022/10/28 10:37
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
別ファイルの構造体の値を読み込む、変えるには?2
C言語・C++・C#
-
define で 配列
C言語・C++・C#
-
<unistd.h>をVisualStudioでつかえるようにする
C言語・C++・C#
-
-
4
C++ 構造体の一括初期化 {0}
C言語・C++・C#
-
5
【gcc・cygwin】multiple definitionエラーの解決法
C言語・C++・C#
-
6
ファイル内のデータを1行削除する方法
C言語・C++・C#
-
7
構文エラー;"が型の前にありませんとは、どうしたら解決できるのですか。"
C言語・C++・C#
-
8
C言語にて構造体のメンバがNULLであるかを判定するサンプルを作成して
C言語・C++・C#
-
9
C言語でヘッダファイルにグローバル変数を宣言する
C言語・C++・C#
-
10
#defineの定数を文字列として読み込む
C言語・C++・C#
-
11
C言語で構造体のメンバを簡単に出力する方法ありますか?
C言語・C++・C#
-
12
分割コンパイルの#defineについて
C言語・C++・C#
-
13
ヘッダーファイルからの取り込みについて
C言語・C++・C#
-
14
C言語での引数の省略方法
C言語・C++・C#
-
15
C言語で、メモリを解放しないで終わるプログラム
C言語・C++・C#
-
16
C言語におけるif文の評価順
C言語・C++・C#
-
17
構造体の入れ子が構造体の場合のextern宣言について
C言語・C++・C#
-
18
関数の実体定義にヘッダファイルの2重定義防止方法が効かない?
C言語・C++・C#
-
19
戻り値を返す関数の前に(void)を付ける
C言語・C++・C#
-
20
2重定義って??
C言語・C++・C#
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
関数から配列を返すには?
-
配列の要素数に変数を入れたい...
-
C#で構造体の配列を持った構造...
-
構造体のextern方法
-
Cのエラー
-
define で 配列
-
C言語において、 配列要素をひ...
-
C#で配列が空かを判定するには?
-
C言語 数値の連続入力について
-
配列のNULL初期化について
-
ポインタを使って構造体の配列...
-
構造体の動的確保について
-
AfxBeginThread の引数について
-
C言語の課題が出たのですが自力...
-
fclose()でセグメンテーション違反
-
const で宣言してるのに、値が...
-
c言語
-
C言語の配列のコピーについて質...
-
メンバ変数の取得
-
C言語で重複組合せを全列挙
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
関数から配列を返すには?
-
配列の要素数に変数を入れたい...
-
define で 配列
-
c言語
-
C#で構造体の配列を持った構造...
-
構造体のextern方法
-
C言語において、 配列要素をひ...
-
C#でのフィボナッチ数列
-
C言語の2次元配列 容量が大き...
-
C#で配列が空かを判定するには?
-
配列のアドレス部
-
char型配列をint型に代入するには
-
2番目の最大値を求める
-
C言語の課題が出たのですが自力...
-
C言語についてです 5人のテスト...
-
C言語から質問です。
-
C言語 ファイルの指定された行...
-
c言語 構造体
-
コンボボックスでデフォルト値...
-
MFCのCArrayを使った二次元配列
おすすめ情報