auの日記

プログラミング初心者の日記。(auはハンドルネームです)

C言語

C言語のアドレス

auです。 今回はC言語におけるアドレスやポインタ変数について書きたいと思います。 大学でやってるんですが、正直理解できてないのでこれを機に理解したいと思います。 アドレスとは プログラムにある変数や配列の値は、コンピュータのメモリに記憶されてい…

C言語で文字列の扱い方②

auです。 前回は1バイトの1文字の場合のchar型の扱い方について書きました。 1バイトの文字は1~9, a~Z, -^\などの半角の文字をいうので、"あいうえお"などの日本語は2バイトになります。 program-shoshinsya.hatenablog.com 今回は複数の文字の場合のchar型…

C言語での文字列の表示の仕方

auです。 今まで数字ばかり扱っていて、文字を扱っていなかったので、文字の表示の仕方について書きたいと思います。 1文字だけの場合(文字)と複数の文字の場合(文字列)で、扱い方が違います。今日は、文字の場合について書きます。 また、半角文字と全角文…

C言語でscanfを使う

auです。 今回はキーボードで値を入力する関数"scanf"について書きたいと思います。 自分で入力できる値を実行するたびに変えられるので便利になります。 scanfとは scanfの読み方は「スキャンエフ」です。 scanf関数の書き方は以下の通りです。 scanf("変換…

C言語の変換指定子

auです。 今回は、"printf("%d\n")"の中にある"%d"の部分について書きたいと思います。 変換指定子とは %dや%cなどの名前は変換指定子です。 入力する文字列の変数の型を指定するために変換指定子というものを使います。 例えば... int型の場合には"%d" char…

C言語の関数のプロトタイプ宣言

auです。 前回のスコープの記事の中で使ったプロトタイプ宣言について書きたいと思います。 ↓前回の記事 program-shoshinsya.hatenablog.com 関数のプロトタイプ宣言とは プロトタイプ宣言の前に、関数を呼び出すにはルールで呼び出す前に記述しておかなけれ…

C言語でのスコープについて

auです。 今回はC言語を学んでいたら「変数のスコープ」という言葉を見つけて、どんなものだろうと思ったので調べてみました。 スコープとは スコープを日本語に直すと"有効範囲"という意味になります。ローカル変数とグローバル変数の2種類があり、有効範囲…

C言語で配列

auです。 今回は配列について勉強しました。 配列は同じデータ型の複数の値をまとめて扱うことができます。 1つ1つのデータを「要素」といいます。 1つの配列名で多くの要素を管理することができるのが配列となります。この要素は「0」から始まります。 name…

C言語で引数のない関数を扱う

auです。 前回は引数のある関数を勉強しました。 program-shoshinsya.hatenablog.com引数とは、このデータを使って処理をしてくださいという意味です。 前回は1と3を使って足し算をしてくださいという引数でした。 int sum(int a, int b){ return a + b; } i…

C言語で関数を使う

auです。 今回は、C言語で関数を使ってみたいと思います。 関数は、処理のひとつの塊で、一度使っておくと後で使いまわすことができる便利なものです。 関数の作り方 作り方は以下の通りです。 戻り値の型名 関数名(型名 引数1, 型名 引数2, ・・・) { 処理;…

C言語でswitch文

auです。 C言語でswitch文の使い方について調べたのでまとめたいと思います。 switch文はいつ使うか switch文は条件によって処理を分けるときに使います。 例えば、順位によって何位ですという文を表示したり、サイコロの目によって処理を変えたりできます。…

C言語でwhile文

auです。 今回はC言語でのwhile文の書き方を調べてみました。 また、Pythonの書き方と比べてみました。 while文は、ある条件がTrue(合っている)場合に処理を繰り返します。ずっと繰り返すと無限ループとなってしまい、意図しないことが起きる場合もります。…

C言語とPythonのfor文を比較してみた

auです。 if文を書いたので次はfor文を書いてみようと思います。 C言語でのfor文 for (式1 ; 式2; 式3) { 繰り返し実行したい内容; } これだけじゃわかりにくいので1~9を出力するfor文を書きます #include<stdio.h> int main(void){ int i; for (i = 0; i < 10; i++) </stdio.h>…

C言語を実行する際に使う./a.outについて

auです。 gccを使ってコンパイルしたときに、それを出力するのはなんで「./a.out」なのか疑問に思ったので調べてみました。 ./a.outについて gccでコンパイルする際に、ファイル名を指定しない場合に使われるデフォルトで設定されているファイル名です。 出…

C言語でif分岐

auです。 私は少し前までPythonをやっていましたが、今はC言語を学んでいます。if分岐での処理の仕方は変わってないのですが、書き方がPythonから変わってしまったので、どこが変わってしまったのかを書きたいと思います。 Pythonでの書き方 Pythonでif分岐…

C言語でコンパイルをするプログラム「gcc」について

auです。 昨日コンパイルについて説明しました。 コンパイルとは、人間にわかりやすい形で書かれたプログラムを、機械語に翻訳することです。 本題のgccについて書いていきます。 gccとは GNU Compiler Collectionの略称で、gcc自体はオープンソースで公開さ…

C言語の#include <stdio.h>の意味

auです。 C言語を書く際のおまじないの部分(#includeなど)の意味を調べてみました #include <stdio.h>の意味 プログラムの本文ではない部分(int aなど実行した際に動かない部分)をヘッダといいます。プログラムを実行したときに動かない#include <stdio.h>の部分はヘッダという</stdio.h></stdio.h>…

初心者が初めてC言語に触れてみた

auです。 今回はC言語について少し勉強しました。 エディタは「Visual Studio Code」を使用しています。 Visual Studio Code - Visual Studio C言語の書き方 今はまだ呪文だと思っておいておっけーって言われたので、まだ意味はよくわかってな部分が多いです…