第76話 少し変わった彼女

 花守はなもりさんに衝撃的な事実を打ち明けられてから数日。

 今日の講義はCプログラミング入門。

 つまり、彼女が以前食ってかかった先生が担当している講義。


花守はなもりさん、大丈夫かな……)


 一つ前の列に座っている花守さんと高田たかだ君。


(やるだけのことはやったし、二人に任せるしかないだろ)

(そうなんだけど。むー……)


 昔の自分をどうしても重ねてしまうから、やっぱり心配。

 あの後、修ちゃんの方には高田君から、


【花守がようやく自覚してくれたみたいで助かった。恩に着るよ】


 そんなメッセージが。私の方には花守さんの方から、


【高田君はちょっと苦笑いでしたけど、ほっとしてたみたいです】


 そんなメッセージが届いていた。


「今回は配列について学びます。配列は、複数のデータをひとまとまりにして扱いたいときに使うデータ型で、添字と呼ばれる整数でアクセスすることができます。喩えると、名簿データがあって、先頭から1、2、3……と番号が振られているなら、1番目の人、という言い方ができますが、そのように理解すると良いかもしれません。ただし、C言語では配列は0番目から始まる点にだけ注意してください」


 先生の説明の出だしは無難なものだった。また、花守さんが反応するような間違いをしないか、少しヒヤヒヤだけど。


「C言語での配列は次のように宣言します」


 とホワイトボードにキュッキュと


 【型名 配列名[要素数];】


 が書かれる。


「たとえば、10要素の整数の配列を宣言すると、次のようになります」


 【int array[10];】


 その後も配列の基本について説明が続いたのだけど、関数に配列を渡すところで不穏な……別に不穏ではないのだけど、花守さんが反応してしまいそうな説明のミスがあった。


「関数に配列を渡すときは注意が必要です。配列を渡す時は次のように書きます」


struct member {

 char* name;

};

char* get_name(struct member members[], int nth) {

 return members[nth].name;

}


「配列とポインタは一見してよく似ています。関数の引数でもポインタを渡すための次の宣言と混同される・・・・・・・・・ことがありますが、間違えないようにしましょう」


struct member {

 char* name;

};

char* get_name(struct member *members, int nth) {

 return members[nth].name;

}


 先生の説明はまたもや、しかも、初心者が勘違いしそうなところで間違っていた。私もそこまで深く勉強したわけじゃないのだけど、最初のコードと後のコードは意味的には同じというのがC言語の仕様としては正しいはず。


 私が勉強に使った本には「配列とポインタについては、説明する方がそもそも理解していないせいで、トンチンカンな説明がかかれている初心者向けの本も多くありますが」というきつい形で注意書きがあった。その本は他の初心者本と比べて疑問の余地がない説明があって納得したのを覚えている。


(なあ。なんか微妙な表情してるけど、ひょっとして……)


 私の変化に気づいたのか小声で問いかけてくる修ちゃん。


(うん。花守さんが先生を問い詰め始めないといいんだけど……)


 ヒヤヒヤしながら一つ前の席を見つめる私と修ちゃん。

 案の定、何やら挙動不審になっている花守さん。

 手をわさわさとさせて、ツッコミたくて仕方がないという感じだ。

 人はやっぱり急には変われない。


 と思っていたら、すー、はー、と深呼吸を数度したかと思えば途端に挙動不審が収まった花守さん。


(やったね。お姉さんは嬉しいよ)

(百合は入れ込み過ぎだって)


 その後は無難に説明が続いたのだけど、講義終了後のこと。


「先生。前回の講義では失礼しました。それで、ちょっと言いづらいのですけど、関数宣言での配列のところ、少し間違っているような気がします」


 他の生徒が去った後に、以前が嘘のような穏当な言い方で先生の間違いを指摘している花守さん。


「ああ、すいません。私も実はC入門は今年度から受け持つことになってて、花守さんみたいな優秀な学生さんにしてみれば……と少しヒヤヒヤものだったんですよ。前回は私も不勉強ですいませんでした。それで、間違いというのは?」

「ポインタと配列の違いについてなんですが、先生が提示した二つの宣言は実は同じ意味です。勘違いが多い点なのですが、実はC言語の設計者が構文を設計したときの手抜きと言いますか。[]を使った見た目でも書けるようにしただけで、言語的には引数の宣言での[]は*を使ったのと全く同じです」


 あの本には書かれていなかったけど、勘違いが出る背景まで。高校生にして実用的な言語を作っているだけある。にしても、教科書にもネットにもなかなか載っていない情報をどうやって調べたんだろう?


「なるほど……。私もその点は初めて知りました。花守さん、よければ来年の講義からティーチングアシスタントしていただけませんか?」


 ティーチングアシスタント(TA)。講師の補佐として、先生の手が回らないところを見て回ったり講義資料を代わりに配布したりする役目の学生のことだ。通常、先生が所属している研究室の学生が務める事が多いらしいけど。


「ええ?いいんですか?その……来年でも私、まだ二年生ですけど」


 いきなり話を振られた花守さんはといえば恐縮しきっていた。


「正直、自信が持てない講義をするのも気が引けますしね。優秀な学生さんにTAをやってもらえるなら心強いです。TAと言っても講義資料のチェックと学生の答案チェックくらいですし、アルバイト代も出ますよ。無理にとは言いませんが」

「そ、そうですね。是非、よろしくお願いします」


 どうやら来年度のC言語入門では彼女がTAをすることになりそうだ。

 先生が去った後。


「花守、良かったじゃないか。二年からTAとか美味しいバイトだよなー」

「ちょっとは成長した……?」

「元々、俺なんかより全然凄いしな。子守が必要なくなって寂しい限りだよ」

「子守って……」

「冗談だよ、冗談」


 少しむくれる花守さんに、茶化す高田君。

 なんだか微笑ましい光景だ。


「ちょっとした言い方で随分変わるもんだな」

「私も授業の後に言うようにしたら変わったもんね」

「ま、先生も人間だからな」

「だから修ちゃん、ありがとうね」

「今更言われても照れくさいって」


 髪をぽりぽりかいている旦那様を見ていると、

 なんだかウズウズしてくる。


「旦那様、そういう風に照れると可愛いよね」

「ますます照れるからやめろって」

「じゃあ、こうしたらもっと照れる?」


 他に人も居ないしいいよね。

 ちゅっと目をつむって口づけをする。


「ちょ。待て待て」


 照れてくれるかと思いきや後ずさる旦那様。

 想定した反応と違う……。


「誰も居ないでしょ?」

「いやいや、居るって」


 そういえば。


「やっぱり仲いいな」

「さすがに夫婦だけあるよね」


 気まずそうに見つめる二人組。

 

「ご、ごめん……」

「二人とも、悪い」

 

 だから言ったのに。

 修ちゃんの顔にそう書いてある。


「別にいいと思う、ぜ?」

「そ、そうそう。夫婦のスキンシップ?だし」


 二人のフォローが心に痛かった。

  • Xで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

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

カクヨムで可能な読書体験をくわしく知る