atwiki-logo
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • このページの操作履歴
    • このウィキのページ操作履歴
  • ページ一覧
    • ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このウィキの更新情報RSS
    • このウィキ新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡(不具合、障害など)
ページ検索 メニュー
helloworld C# @Wiki
  • 広告なしオファー
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
広告非表示(β版)
ページ一覧
helloworld C# @Wiki
  • 広告なしオファー
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
helloworld C# @Wiki
広告非表示 広告非表示(β)版 ページ検索 ページ検索 メニュー メニュー
  • 新規作成
  • 編集する
  • 登録/ログイン
  • 管理メニュー
管理メニュー
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • このページの操作履歴
    • このウィキのページ操作履歴
  • ページ一覧
    • このウィキの全ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ一覧(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このwikiの更新情報RSS
    • このwikiの新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡する(不具合、障害など)
  • atwiki
  • helloworld C# @Wiki
  • 変数

helloworld C# @Wiki

変数

最終更新:2006年02月05日 03:02

匿名ユーザー

- view
管理者のみ編集可

変数とは?


変数とは、プログラムの中で使用する、数値や文字などの記憶場所です。

たとえば、以下のプログラムではxが変数です。

//xというint型の変数を宣言
int x;
//変数xに3という値を入れる
x = 3; 
(注意:スラッシュ二つ(//)から始まる行は、コメントです。この行はプログラムとして実行されませんが、人間が読むときに、プログラムをわかりやすくしたり、注意書きを入れるために書きます。この行がなくても動きます。)

C#では、変数を使用する前に変数の「宣言」が必要です。

宣言は、
型名 変数名;
という書き方をします。「プログラム中で、こういう型でこういう名前の変数を使います。」という意味です。

上のプログラムでは、
int x;
という行が宣言です。intが型名で、xが変数名です。ちなみにxは、私が適当に付けた変数名なので、yでも良いし、numでも良いし、qwwertyuiasdfghjklでも良いです。宣言によって変数に具体的な名前が付けられるわけです。
(ただし、実際のプログラム開発では、他人が見てもわかりやすいように、意味のある名前を付けましょう。)

ついでに、最後のセミコロン(;)ですが、これは一文の終わりを意味します。日本語の句点(。)とか、英語のピリオド(.)とかと似たようなものです。

さて、変数の名前は、宣言によってプログラマが決めますが、型名の方はそうはいきません。

型とは?


型とは、どういう値が格納可能なのかを示しています。
例えば
  • int には数値
  • string には文字列
  • DateTime には日付・時間
などというふうに、その型の変数には、入れられるものが決まっています。

そのため、

int x;
x = "こんにちは";

という記述はできません。xはint型の変数なので、入れられるのは数値だけであり、「"こんにちは"」は、数値ではなく文字列だからです。

型名は変数名のように宣言箇所で勝手に命名することはできません。とは言うものの、宣言箇所ではダメですが、自分で命名した型を用意しておいてそれを使うことは可能です。この辺の説明は、ちょっと難しいので後にします。

代入

x = 3;
という記述ですが、これは代入です。
イコール記号(=)には、左辺を右辺に代入するという意味があります。
気を付けて欲しいのですが、算数や数学の左辺と右辺が等しいという意味のイコール記号とは全く違います。

int x;
x = 3;
x = x + 5;

算数や数学では、x = x + 5などというわけのわからん式は成り立ちませんが、プログラムでは成り立ちます。
これはプログラムとしては、「2行目までのxに5を足した値を、xに入れ直しなさい」という命令として扱われるからです。

ところでC#の変数には、値型と参照型の2種類があり、この2種類において、代入の意味も異なります。

値型


値型に当たる型は、bool、int、long、float、doubleなどの真偽値や数値を格納する型、および構造体です。
値型の変数は、変数の宣言によってその型分のメモリが確保され、変数への代入では、値が直接格納されます。

//この宣言で4バイト分の領域が確保される
int x;
//数値を代入する
x = 3;

さっきまでと同じですが、このプログラムでは、宣言した変数そのものに3という値を格納します。

これはわかりやすいですが、参照型がちょっと難しいです。


参照型


参照型の変数に当たる型は、クラスや配列です。
参照型では、変数の宣言によってオブジェクト分のメモリ領域は確保が確保されるわけではありません。参照型の変数にはオブジェクトへの位置情報が格納されるだけで、実体は別に生成する必要があります。Windowsのショートカットファイルが、別の場所に存在する実際のファイルへリンクしているに過ぎないというのに似ています。

//JapaneseCalendar型の変数を宣言
JapaneseCalendar x;
//JapaneseCalendarの実体を作成して変数に参照をセット
x = new JapaneseCalendar();

JapaneseCalendarは和暦を司るクラスですが、参照型の例として出しただけなので、これが何ものなのかは気にしないでください。

このプログラムでは、newキーワードを使用したnew JapaneseCalendar()という記述で実体ができあがり、イコール記号によって作った実体の位置情報をセットをします。重要なのは、この場合のイコール記号は、値型の変数への代入と違い、xにJapaneseCalendarの実体そのものを格納しているのではないということです。リンク先を設定するようなイメージで捕らえると良いと思います。

さてさて、最後は何だか難しい話になってしまいました。今は良くわからなくても気にしないで良いです。ただし、重要な概念なので、何だか意味不明だったけど、「値型」と「参照型」という区別があったなぁくらいには覚えておいてください。



名前:
コメント:
「変数」をウィキ内検索
LINE
シェア
Tweet
helloworld C# @Wiki
記事メニュー

基本事項

  • C♯とは?
  • プログラミングに必要なもの

1.Hello world

  • Hello, world
  • プロジェクトを作る
  • 最初のプログラムを書く
  • プログラムを実行する
  • コマンドプロンプトの基本操作

2.年齢計算ソフト

  • キー入力に反応する
  • 変数

Information

  • トップページ
  • 参考書籍
記事メニュー2
最近更新されたページ
  • 7215日前

    参考書籍
  • 7215日前

    メニュー
  • 7215日前

    キー入力に反応する
  • 7215日前

    コマンドプロンプトの基本操作
  • 7215日前

    プログラムを実行する
  • 7215日前

    最初のプログラムを書く
  • 7215日前

    Hello, world
  • 7215日前

    変数
  • 7215日前

    プロジェクトを作る
  • 7224日前

    トップページ
もっと見る
最近更新されたページ
  • 7215日前

    参考書籍
  • 7215日前

    メニュー
  • 7215日前

    キー入力に反応する
  • 7215日前

    コマンドプロンプトの基本操作
  • 7215日前

    プログラムを実行する
  • 7215日前

    最初のプログラムを書く
  • 7215日前

    Hello, world
  • 7215日前

    変数
  • 7215日前

    プロジェクトを作る
  • 7224日前

    トップページ
もっと見る
ウィキ募集バナー
急上昇Wikiランキング

急上昇中のWikiランキングです。今注目を集めている話題をチェックしてみよう!

  1. フォートナイト攻略Wiki
  2. デジタルモンスター まとめ@ ウィキ
  3. 発車メロディーwiki
  4. 首都圏駅メロwiki
  5. 駅のスピーカーwiki
  6. マージマンション@wiki
  7. 作画@wiki
  8. Fate/Grand Order @wiki 【FGO】
  9. トリコ総合データベース
  10. 機動戦士ガンダム ギレンの野望 アクシズの脅威V 攻略wiki
もっと見る
人気Wikiランキング

atwikiでよく見られているWikiのランキングです。新しい情報を発見してみよう!

  1. アニヲタWiki(仮)
  2. ゲームカタログ@Wiki ~名作からクソゲーまで~
  3. 初音ミク Wiki
  4. MADTOWNGTAまとめwiki
  5. 機動戦士ガンダム バトルオペレーション2攻略Wiki 3rd Season
  6. ストグラ まとめ @ウィキ
  7. 検索してはいけない言葉 @ ウィキ
  8. Grand Theft Auto V(グランドセフトオート5)GTA5 & GTAオンライン 情報・攻略wiki
  9. 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
  10. 英傑大戦wiki
もっと見る
新規Wikiランキング

最近作成されたWikiのアクセスランキングです。見るだけでなく加筆してみよう!

  1. MADTOWNGTAまとめwiki
  2. MadTown GTA (Beta) まとめウィキ
  3. フォートナイト攻略Wiki
  4. 首都圏駅メロwiki
  5. Last Z: Survival Shooter @ ウィキ
  6. まどドラ攻略wiki
  7. 駅のスピーカーwiki
  8. ちいぽけ攻略
  9. ソニックレーシング クロスワールド 攻略@ ウィキ
  10. 戦国ダイナスティ攻略Wiki@ウィキ
もっと見る
全体ページランキング

最近アクセスの多かったページランキングです。話題のページを見に行こう!

  1. 【移転】Miss AV 見れない Missav.wsが見れない?!MissAV新URLはどこ?閉鎖・終了してない?missav.ai元気玉って何? - ホワイトハッカー研究所
  2. 魔獣トゲイラ - バトルロイヤルR+α ファンフィクション(二次創作など)総合wiki
  3. XVI - MADTOWNGTAまとめwiki
  4. 参加者一覧 - MADTOWNGTAまとめwiki
  5. 参加者一覧 - ストグラ まとめ @ウィキ
  6. ブラック・マジシャン・ガール - アニヲタWiki(仮)
  7. コメント/雑談・質問 - マージマンション@wiki
  8. Pokémon LEGENDS Z-A - アニヲタWiki(仮)
  9. ハーディガン - 機動戦士ガンダム バトルオペレーション2攻略Wiki 3rd Season
  10. 鬼レンチャン(レベル順) - 鬼レンチャンWiki
もっと見る

  • このWikiのTOPへ
  • 全ページ一覧
  • アットウィキTOP
  • 利用規約
  • プライバシーポリシー

2019 AtWiki, Inc.