曙工芸 ノヴァ377 ポールハンガー W400×D400×H1800mm
 

連載

C#入門

第9 ステートメント

(株)ピーデー
川俣 晶
2001/08/03


ステートメントとは

 古い世代のプログラム言語では、すべての機能を言語仕様に取り込んでしまうことが多かった。その後、入出力などの機能は言語の一部ではなく、ライブラリに置く方向に進化してきた。そのため、BASICではステートメントとして言語の一部であった多くの機能がライブラリに移動した。C#でもステートメントの種類は大幅に減少している。ステートメントとして残ったものは、ライブラリでは実現できない最小限度のものに限られている。しかし、種類は少ないものの、条件判断や繰り返しなどよく使われるものが多いので、習得は必須と言える。今回は、C#の主要なステートメントを取り上げ、解説する。

ブロック

 C#で最も基本となるステートメントがブロックである。ブロックは複数のステートメントを集めて1つのステートメントであるかのように見せかける機能を持つ。これにより、1つのステートメントに作用する機能に対して、複数のステートメントを与えることが可能になる。たとえば、後で述べるifステートメントでは、条件成立時に実行できるステートメントは1個だけだが、その1個をこのブロック・ステートメントにすれば、何個でもステートメントを実行させることができる。いちいち説明しないが他のステートメントでも同様である。

 ブロック・ステートメントの構文は簡単で、“{”(中カッコ始め)記号で始まり、“}”(中カッコ閉じ)記号で終わるだけである。

 ブロック・ステートメントはローカル変数の寿命に影響を与えることに注意が必要だ。以下のサンプルソースを見ていただきたい。

 1: namespace ConsoleApplication13
 2: {
 3:   using System;
 4:
 5:   public class Class1
 6:   {
 7:     public static int Main(string[] args)
 8:     {
 9:       int a=1;
10:       {
11:         int b=2;
12:         Console.WriteLine(a);
13:         Console.WriteLine(b);
14:       }
15:       Console.WriteLine(a);
16:       // Console.WriteLine(b); // エラーになる
17:       return 0;
18:     }
19:   }
20: }
ブロック・ステートメントを使用するサンプル・プログラム

 11行目で宣言された変数bは、ブロック・ステートメントの中で宣言されているので、寿命はブロックの範囲内にされる。つまり、14行目を超えると変数bは存在しなくなる。そのため、16行目で変数bを利用しようとすると、コンパイル・エラーになってしまう。ブロックが終わった後で使いたい変数はブロックの外で宣言する必要がある。

 ブロックは、変数がメソッド内のある特定の範囲でしか使われないことを明示的に示すためにも使われる。つまり、ブロック外から参照することが無意味な変数を誤って参照すれば、コンパイル・エラーになってプログラマに気付くチャンスを与えるというわけである。

 なお、このサンプルソースを実行した結果は以下のようになる。

プログラムの実行結果
ローカル変数の寿命はブロックの範囲内にされる。

変数と定数の宣言

 話は前後するが、ローカル変数を宣言することも、一種のステートメントとして扱われている。すでに何回も使ってきた機能なので、改めてくどくど説明することもないだろう。

 宣言する際に、手前にconstキーワードを付加すると、ローカル変数ではなく、ローカル定数となる。定数は値を決めたらいっさい変更できない。以下のサンプルソースの9行目がローカル変数の宣言である。10行目がローカル定数の宣言になる。ローカル変数は11行目のように値を変更できるが、ローカル定数は、12行目のように値を変更するコードを書くとコンパイル・エラーになる。

 1: namespace ConsoleApplication16
 2: {
 3:   using System;
 4:
 5:   public class Class1
 6:   {
 7:     public static int Main(string[] args)
 8:     {
 9:       int i=1;
10:       const int j=1;
11:       i = i + 1;
12:       // j = j + 1;   // エラーになる
13:       Console.WriteLine(i);
14:       Console.WriteLine(j);
15:       return 0;
16:     }
17:   }
18: }
変数と定数の宣言を示すサンプル・プログラム

 なお、このサンプルソースを実行した結果は以下のようになる。

プログラムの実行結果
変数の宣言ではconstキーワードを付けると定数となる。定数は、値を決めたら、いっさいそれを変更できない。
 
 

 INDEX
  C#入門 第9回 ステートメント
  1.ステートメントとは
    2.分岐
    3.繰り返しのコントロール
 
「C#入門」


レディース Grease - ファッション Legging パンツ サンクチュアリ ズボン Sanctuary Original 通販 Dover Ponte Plaid 女性用

JwNDxcuDYW

サンクチュアリ Sanctuary レディース 女性用 ファッション パンツ ズボン Original Grease Ponte Legging - Dover Plaid

 サンクチュアリ Sanctuary レディース 女性用 ファッション パンツ ズボン Original Grease Ponte Legging - Dover Plaid:グッズ×グッズ
サンクチュアリSanctuaryレディース女性用ファッションパンツズボンOriginalGreasePonteLegging-DoverPlaid
サンクチュアリSanctuaryレディース女性用ファッションパンツズボンOriginalGreasePonteLegging-DoverPlaid
サンクチュアリSanctuaryレディース女性用ファッションパンツズボンOriginalGreasePonteLegging-DoverPlaid
サンクチュアリSanctuaryレディース女性用ファッションパンツズボンOriginalGreasePonteLegging-DoverPlaid
,こちらの商品は サンクチュアリ Sanctuary レディース 女性用 ファッション パンツ ズボン Original Grease Ponte Legging - Dover Plaid です。

商品は弊社アメリカ支社からの取り寄せとなります。あす楽、代引きでの発送はお受けできません。
注文後のサイズ変更・キャンセルは出来ませんので、十分なご検討の上でのご注文をお願いいたします。

※靴など、オリジナルの箱が無い場合がございます。ご確認が必要な場合にはご購入前にお問い合せください。
※画面の表示と実物では多少色具合が異なって見える場合もございます。
※ご入金確認後、商品の発送まで1から3週間ほどかかります。
※アメリカ商品の為、稀にスクラッチなどがある場合がございます。使用に問題のない程度のものは不良品とは扱いませんのでご了承下さい。



━ カタログ(英語)より抜粋 ━

Don't sacrifice comfort for fashion. Have it all with these Sanctuary(TM) pants.
Supersoft leggings are an easy pull-on design.
Skinny fit.
Fitted waistband.
Faux front pockets.
Subtle brand logo at back right pocket.
68% rayon, 27% nylon, 5% spandex.
Machine wash cold, tumble dry low.
Product measurements were taken using size SM (US 4-6), inseam 29. サイズにより異なりますので、あくまで参考値として参照ください.
実寸(参考値):
Waist Measurement: 約 66.04 cm
Outseam: 約 96.52 cm
Inseam: 約 73.66 cm
Front Rise: 約 25.40 cm
Back Rise: 約 35.56 cm
Leg Opening: 約 25.40 cm



Missguided Tall ミスガイデッド ファッション BUTTON SMOCK DRESS DALMATIAN - Day dress - black,【ネコポス対応】長財布 メンズ ブランド 本革 ラウンドファスナー 薄い おしゃれ 大きめ 革 カード 大容量 カード入れ 軽い 小銭入れ 2室 仕切り コンパクト シンプル スリム 黒 牛革 2色 木目 リューズワン 154040 メンズ・バレンタイン・プレゼント,ダンスコ レディース ブーツ&レインブーツ シューズ Dori Knee High Boot Black Aniline Calf Leather,ARENA(アリーナ) AQUA-HYBRID セイフリーバックスパッツ(着やストラップ) ARN8080W ネイビー×グレイ×グリーンF S,バンズ エラ スエード オーストリッチ メンズ VANS COMFYCUSH ERA VN0A3WM92QF (SUEDE/OSTRICH) BLACK/MARSHMALLOW 黒 USA企画,【MiDiom】ハイネックロングコート / High Neck Padding Coat /ミディオム アウター 中綿 ナイロン ジャケット デザインコート メンズ モード系 19AW新作,Molo スポーツ用品 HARPER - Waterproof jacket - maroon,プラーナ メンズ パーカー・スウェット アウター Prana Men's Norcross Fleece Crew Top Heather Grey,モドオードック Mod-o-doc レディース クロップド ボトムス・パンツ【Linen Rayon Cropped Pants with Crossover Panels】Cactus,PHILIPPE MODEL メンズ スニーカー シューズ 靴 ダークブルー,ナイキ NIKE エア ハラチ 黒 ブラック RUN“BRONZINE” スニーカー 【 AIR HUARACHE BLACK NIKE WMNS BRONZINE BRONZINESAIL 】,その他 木製マッペ 36枚用 10枚 ds2211063,【3年保証】 スカーゲン メンズ レディース ユニセックス 腕時計 SKAGEN 時計 スカーゲン 時計 SKAGEN 腕時計 人気 クオーツ ブランド SKW2440 ホワイト スカーゲン レディース,MALLONI Casual pants レディース,糸魚川翡翠勾玉 M06400元粋 作21mm*13.5mm*6mm,ドリスヴァンノッテン DRIES VAN NOTEN メンズ ボトムス パンツ ミリタリーグリーン,【セール出品】 【CUSHMAN クッシュマン】 MATTSONS' OF HOLLYWOOD マットソンズ リサイクルコットン生地 ロウブロウ アーティスト”KNUCKLE(ナックル)”氏デザイン 半袖 Tシャツ ≪WEIRDO TEE/THE DELINQUENTS(エアーブラシ仕上げ)≫ スパイダーウェブ 白,ティファニー TIFFANY&Co. エルサ・ペレッティ ダイヤモンド バイザヤード ネックレス 3P 27953948 D:0.21ct 新品 ジュエリー ブランドジュエリー,DANIELE ALESSANDRINI Sneakers メンズ,モスキーノ MOSCHINO ベビー 赤ちゃん サンダル シューズ 靴 フューシャ,【10%OFF】 0.36カラット 天然 ガーネット シルバー925 ネックレス ペンダント レディース 小粒 シンプル 天然石 誕生石 金属アレルギー対応 誕生日プレゼント,●civilise 【シビリゼ】 接結レース切り替えチュニック 84208,度付き対応不可 ゼロアールエイチプラス メガネフレーム 伊達メガネ ルックス ZERORh+ LUX RH752 04 65サイズ スポーツ(ハーフリム) ユニセックス メンズ レディース,D'URBAN ダーバン 日本製 コットン ストレッチ パンツ チノパン 定2.6万 ネイビー 94▲030▼01111k01,ナイキ メンズ ポロシャツ "Michigan State Spartans" Nike 2019 Elite Coaches Sideline Performance Polo ミシガンステイト大学 半袖 Green,【ペア価格】ペアウォッチ クラス14 腕時計 KLASSE14 時計 ペア ウォッチ クラス 14 KLASSE 14 クラスフォーティーン メンズ レディース セット [ 人気 ブランド 旦那 妻 嫁 夫 彼氏 彼女 夫婦 お揃い カップル プレゼント 金属 メッシュ メタル ベルト おしゃれ シンプル ],コロンブス シューツリー ブラック塗装 25.0-25.5mm 3個セット,トイズマッコイ パーカー TMC2053 Felix the Cat メンズ ハーフジップ プルオーバー スウェットパーカー アッシュグレー 新品,【SALE特価30%off】ANATOMICA (アナトミカ)『SMALL SHOULDER BAG』(山吹/YAMABUKI)【正規取扱店】【smtb-KD】【sm15-17】【楽ギフ_包装】【ショルダーバッグ】【コットンキャンバス】,BEAUTY & YOUTH UNITED ARROWS 【別注】 <Aer(エアー)> COMMUTER PACK/バッグ ビューティ&ユース ユナイテッドアローズ バッグ リュック/バックパック ブラック グレー【送料無料】,TWINSET キッズ 子供服 ブラウス シャツ トップス 大人もOK ホワイト,1/5限定!エントリー+RカードでPt20倍ピコリノス PIKOLINOS正規通販 レディース カジュアルシューズW9B-6507KR GY グレー レザースニーカーピコリノス PIKOLINOS正規通販 レディース カジュアルシューズW9B-6507KR GY グレー レザースニーカー,先行予約 クライミー シャツ CRIMIE GRUNGE CHECK SHIRT 10月~11月入荷予定 ストリート系 ファッション,グッチ GUCCI 6連 キーケース クリスマス プレゼント ネイビー マイクロ グッチシマ レザー 本革 アウトレット ブランド 150402-bmj1n-4009 2020 秋冬 新作,ウールリッチ WOOL RICHアークティック・パーカー MLARCTIC PARKA MLWOCPS2393Dメンズ アウター ダウンジャケット,シュッツ レディース ブーツレインブーツ シューズ Kika Leopard Print Patent Leather Block Heel Booties Natural,【ペア価格】ペアウォッチ クラス14 腕時計 KLASSE14 時計 ペア ウォッチ クラス 14 KLASSE 14 クラスフォーティーン メンズ レディース セット [ 人気 ブランド 旦那 妻 嫁 夫 彼氏 彼女 夫婦 お揃い カップル プレゼント 革ベルト レザー おしゃれ シンプル ギフト ],【10%OFF】 0.69カラット ナノエメラルド ネックレス レディース ペンダント 天然 ダイヤモンド ピンクゴールド 加工 シルバー925 ブランド おしゃれ サークル ハート メッセージ 緑 シンプル 金属アレルギー対応,ハーモニー Harmony メンズ Tシャツ ロゴTシャツ トップス【teo logo tee】Ash Grey,【 浅見 正絹 長襦袢 千両 星の砂 】 長襦袢 反物 長襦袢 正絹 着物 長襦袢 襦袢 反物 女性用 レディース 着物 長襦袢 フルオーダー仕立て,conqueror コンカラー FOGGY SUEDE フォギー スエード メンズ シューズ HH3 I7,ケイトスペード キーケース スペンサー キーホルダー BLACK kate spade ケイト スペード,DSQUARED2 Short dresses レディース,【新春SALE20%オフ!】アウイナイト 0.15ct ダイヤモンド 0.28ct ネックレス PT900/K18WG プラチナ ホワイトゴールド<スライド式アジャスター>【新品】【ジュエリー】MEL,イルビゾンテ IL BISONTE / 長札入財布 #C0881 869,polo衣類 ポロシャツ arborwear mens techshirt,碌山ジュエリー ゴールドカラーに透かし模様が美しいガーネットとシードパールのピアス204E0337-3-GP-GP,【取寄せ】 ディズニー Disney ファインディングニモ ギフトバスケット ギフト グッズ [並行輸入品] Gift Basket Village NeAnFr Make A Splash with Nemo & Friends クリスマス 誕生日 プレゼント ギフト,クラフトスポーツウェア レディース Tシャツ トップス Craft Women's Charge Singlet Black,腕時計 ウォッチプロフェッショナルダイバーサファイアクリスタルtagheuerprofessionaldiver200mwatchsapphirecrystalwk111,【SALE/20%OFF】MK MICHEL KLEIN homme カットジャケット/TCメランジスラブ ミッシェルクランオム ニット カーディガン ブラウン グレー ブラック【RBA_E】【送料無料】,NIKE WOODSIDE 2 HIGH (PS) CARGO KHAKI/GOLDEN BEIGE-KHAKI ナイキ ウッドサイド 2 ハイ,1/5限定!エントリー+RカードでPt20倍ビジネスシューズ 本革 ストレートチップ ブラウン クインクラシコ QueenClassico メンズ ドレスシューズ 紳士靴 18001dbr ダークブラウン 茶 キャップトゥ日本製 国産 父の日 ギフト プレゼント,W0798G2 GUESS ゲス 腕時計 JET ジェット メンズ 青文字盤 ブルー 青 ピンクゴールドコンビ プレゼント ブランド,【終了】【ソーティング付き】場面あり!大粒キラッと輝く一粒Pt計1.022ctライトブラウンダイヤモンドネックレス【LightBrown,SI2,GOOD】【プラチナ,1.0カラット,1カラット,VeryLight,Brownish,Yellow】,EICON TEE Tシャツ,ナイキ Nike レディース サンダル・ミュール シューズ・靴【Asuna Slide】Black/Anthracite/White,rehacer Volume Tapered Denim Pants レアセル パンツ/ジーンズ フルレングス ブルー【送料無料】

Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

Insider.NET 記事ランキング

本日 月間
ソリューションFLASH