23日目の研修内容について、お話ししたいと思います。
午前中は、主に引き続きネットワークとクラウドのしくみについて学びました。本日はネットワークについてお話します。
今や常識となっている5Gですが、5年ほど前までは4Gと呼ばれる通信規格が使われていたのは覚えていますでしょうか。今でも4G接続になるケースも多いですが、その際に「やっぱり4Gは遅い」
と私は思ってしまいます。実際には、4Gと5Gで通信速度に最大20倍の差があるようです。それに伴い、遅延速度も1/10になっています。これが5G(第5世代移動通信システム)の凄さです。このような4Gや5Gなどのことを通信規格と言います。
また、これを用いているのがモバイルネットワークです。モバイルネットワークは、携帯電話やスマートフォンなどの端末、基地局、交換局で構成されており、私たちの使っているスマートフォンもこれを用いて通信しています。私たちが利用しているシステムもかなり複雑ですね。
午後は引き続きC言語研修を受講しました。本日は主に関数やポインタなどについて学びました。
関数とは、わかりやすく言えばプログラムの箱です。汎用的なprintfやscanfなども関数です。別ルートで同じ処理を行いたいときや、コードを見やすくするために用います。
関数内で宣言した変数は、関数間で値を受け渡すことはできても、変数の箱自体を渡すことはできません。
そこで渡すために用いられるのがC言語を使う上で、切っても切れない関係にあるポインタです。先輩方に丁寧に教えていただいていましたが、私はポインタについての知識が皆無のため、大変難しく感じました。
基本的には、ポインタは変数をアドレス参照して使うための領域です。定義する際は先頭に「*」をつけ、変数と同じように定義します。上記の値受け渡しの場合は、変数のアドレスを別の関数へと渡すことで値を受け渡しを可能にします。
ポインタは使い道もさまざまです。研修中の私たちでは関数間での値の受け渡しや、文字列の配列の要素を取り出すなどでしかまだ使いませんが、構造体の渡しなど、実務になると利用回数が増えるとのことでした。自己学習の際には、研修で使う範囲だけでなく、実務で使うことになる範囲までカバーできるように意識しようと思いました。
ご覧いただきありがとうございました。
次回のブログもよろしくお願いします。