DOBON.NETプログラミング道掲示板
(現在 過去ログ3 を表示中)
HOME
HELP
新規作成
新着記事
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
[
親記事をトピックトップへ
]
このトピックに書きこむ
過去ログには書き込み不可
[ トピック内全4記事(1-4 表示) ] <<
0
>>
■34015
/ inTopicNo.1)
Re[2]: C# 現在のコンテキスト内にxxxという文字は存在しませんと出ます
▼
■
□投稿者/ saitou
一般人(2回)-(2018/10/23(Tue) 19:15:26)
分かりやすく教えていただいてありがとうございました!
最近本を買って始めたばかりですが凄く分かりやすかったです。
解決
済
み!
引用返信
削除キー/
編集
削除
■34014
/ inTopicNo.2)
Re[1]: C# 現在のコンテキスト内にxxxという文字は存在しませんと出ます
▲
▼
■
□投稿者/ 魔界の仮面弁士
大御所(1157回)-(2018/10/23(Tue) 11:56:34)
ここの掲示板にプログラムコードを貼る場合は、
「通常モード」ではなく「図表モード」で投稿すると読みやすいですよ。
■
No34012
に返信(saitouさんの記事)
> char[] days = new char[7] { niti, getu, ka, sui, moku, kin, dou };
days という配列変数を宣言して、そこに
「sui」や「kin」などの 7 つの char 値を代入しようとしていますね。
しかし、代入しようとしている「sui」などの値の定義が漏れているので、
このコードはコンパイルエラーになるはずです。
> 本の通りにやっているつもりなのですがエラーが治せません助けてください
※「治す」→「直す」
本が間違っているか、手順が間違っているのかを、
この質問だけで判断することはできません。
質問文からは、何という本のどの部分を読んでいるのかさえ分かりませんし、
仮に書籍が分かったとしても、他の人が同じ本を持っている保証も無いわけで…。
=== 理解度が読み取れないので、少し長文回答になりますが ===
まず、char というのは「1 文字」を表現する型です。
この型に文字をセットするには、
char niti = '日';
char getu = '月';
のように、1 文字をシングルクォーテーションで囲って渡します。
char 型変数に格納される文字は、常に 1 文字です。0 文字や 7 文字は代入できません。
似たような型に、「文字列」を表現する string 型があり、こちらは
string weekNames = "日月火水木金土";
string message = "";
のように、ダブルクォーテーションで囲って渡します。
string 型変数に格納される文字列は、何文字でも構いません。0 文字でも OK です。
これらは変数だけでなく、定数宣言(const)でも使えます。
const char sui = '水';
const string Suiyoubi = "水曜日";
などのように。
でもって
char[] days;
このように書いた場合、days は「char 型の 1 次元配列」の宣言を意味します。
そして、
char[] days = new char[7];
と書いた場合は、その days に「7 つの char 値」を準備したことになり、
char[] days = new char[7];
days[0] = '日';
days[1] = '月';
days[2] = '火';
days[3] = '水';
days[4] = '木';
days[5] = '金';
days[6] = '土';
のようにして、0〜6 のインデックスを指定して、char 値を代入(あるいは取得)できます。
そして、上記の記述については、
char[] days = new char[7] { '日', '月', '火', '水', '木', '金', '土' };
のように、一行にまとめて書くこともできます。ちなみに、
char[] days = new char[] { '日', '月', '火', '水', '木', '金', '土' };
と書いても OK です。
また、あらかじめ char 型の変数や定数が既にあるのなら、
char niti = '日';
char getu = '月';
const char ka = '火';
const char sui = '水';
などを用いて、
char[] days = new char[] { niti, getu, ka, sui, /*省略*/ };
などと書くこともできます。
引用返信
削除キー/
編集
削除
■34013
/ inTopicNo.3)
Re[1]: C# 現在のコンテキスト内にxxxという文字は存在しませんと出ます
▲
▼
■
□投稿者/ まりもん
一般人(4回)-(2018/10/23(Tue) 11:30:05)
> char[] days = new char[7] { niti, getu, ka, sui, moku, kin, dou };
その本にはこの部分にダブルコーテーションが書いてありませんか?
引用返信
削除キー/
編集
削除
■34012
/ inTopicNo.4)
C# 現在のコンテキスト内にxxxという文字は存在しませんと出ます
▲
▼
■
□投稿者/ saitou
一般人(1回)-(2018/10/23(Tue) 10:58:56)
分類:[その他]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp4
{
class Program
{
static void Main(string[] args)
{
char[] days = new char[7] { niti, getu, ka, sui, moku, kin, dou };
Console.WriteLine(days[1]);
}
}
}
本の通りにやっているつもりなのですがエラーが治せません助けてください
引用返信
削除キー/
編集
削除
トピック内ページ移動 / <<
0
>>
Mode/
通常管理
表示許可
Pass/
HOME
HELP
新規作成
新着記事
トピック表示
発言ランク
ファイル一覧
検索
過去ログ
-
Child Tree
-