Part. 2では様々な演算方法と変数を使ったプログラムを実装していきます。
Part. 1はこちら
演算とは
コンピューターの5大機能のひとつ。
四則演算、数値の大小を比較する比較演算、論理演算などの計算処理のこと。
出典:デジタル用語辞典 - 演算
つまり『 計算を行うこと = 演算 』という考えで間違っていません。プログラミングを行う上でも『どのような演算を行うか』ということを明示してあげる必要があります。どのような演算を行えばよいかを表す記号を『 演算子 』と呼び、いくつかの種類に分けられます。
演算子
C言語の主な演算子には以下のような演算子があります。
表:CとC++の演算子の表(一部抜粋)
算術演算子
名称
構文
単項プラス
+ a
加算
a + b
前置インクリメント
++ a
後置インクリメント
a ++
加算代入
a += b
単項マイナス(負符号)
- a
減算
a - b
前置デクリメント
-- a
後置デクリメント
a --
減算代入
a -= b
乗算
a * b
乗算代入
a *= b
除算
a / b
除算代入
a /= b
剰余
a% b
剰余代入
a%= b
比較演算子
小なり
a < b
小なりイコール
a <= b
大なり
a > b
大なりイコール
a >= b
非等価
a! = b
等価
a == b
論理演算子
論理否定! a
論理積
a && b
論理和
a || b
ビット演算子
左シフト
a << b
左シフト代入
a <<= b
右シフト
a >> b
右シフト代入
a >>= b
ビット否定
~ a
ビット積
a & b
ビット積代入
a &= b
ビット和
a | b
ビット和代入
a |= b
ビット排他的論理和
a ^ b
ビット排他的論理和代入
a ^= b
型変換演算子
型変換(キャスト)
( type)a
その他の演算子
単純代入
a = b
このように、よく使う演算子でもこれだけの量があります。
これ使うの? ?っていうようなものまで含めると、もう少し量がありますが、とりあえずは上の演算子の意味と構文をなんとなく覚えてるだけでGOODです👍
以下に簡単なプログラム例を載せておきます。
#include
整数の最大値に1を加えてみましょう。どうなるでしょうか? int32_t num = 2147483647; num++; printf("%d\n", num);} 出力結果です。最小値になっています。 -2147483648 負の数が2の補数表現 になっている場合は、最大値に1加えると、最小値になります。
!という話になります。 実は、C言語には値を常に入れ替えできる箱のような数が存在します。それを『 変数 』と呼びます。 変数の型 変数には『 型 』と呼ばれる、何を保持するか。という分類分け的なものがあります。以下に基本的な型を示します。 ※ ビットやバイトの解説についてはしていませんので、あらかじめご了承ください。 型 説明 char 1バイトの符号付整数(-128~127)の値を記憶できる. 1バイト文字(英数字など)を1字記憶できる unsigned char 1バイトの符号なし整数(0~255)の値を記憶できる int 2または4バイトの符号付整数の値を記憶できる (2バイトなら-2の15乗~2の15乗-1、4バイトなら-2の31乗~2の31乗-1) short 2バイトの符号付整数(-2の15乗~2の15乗-1)の値を記憶できる long 4バイトの符号付整数(-2の31乗~2の31乗-1)の値を記憶できる unsigned 2バイトまた4バイトの符号なし整数の値を記憶できる (2バイトなら0~2の16乗-1、4バイトなら0~2の32乗-1) unsigned long 4バイトの符号なし整数(0~2の32乗-1)の値を記憶できる unsigned short 2バイトの符号なし整数(0~2の16乗-1)の値を記憶できる float 4バイトの単精度浮動小数点実数(有効桁数7桁) double 8バイトの倍精度浮動小数点実数(有効桁数16桁) これらを用いて変数を定義していきます。変数の定義方法については以下のような方法があります int x; double s, t, u; double hensu = 0. 1; 以下のような定義はエラーになります。(悪い例です) int val; double val; はい。ここで先ほどの伏線を回収しておきましょう。 = が等しいを表すものではない ということを。 数学の世界では、左と右が同じという事を表すために = を使っています。 また、等しくない時には ≠ を使っていましたね。 2 * 4 ≠ 10 プログラム上でこれを書くとどうなるのでしょうか。こうなります。 2 * 5 == 10 2 * 4! = 10 先ほどの演算子の中にあったのですが、気づきましたか? 四則計算と算術演算子(C言語) - 超初心者向けプログラミング入門. == や! = は 比較演算子 と呼ばれ、左右を比較する時に用いられます。数学でいう = や ≠ と同じ意味です。 また、 = は 代入演算子 と呼ばれ、右の値を左に代入するという意味合いがあります。数学でいうと ≡ に近しいかも。 はい。伏線回収終了ですね。話を戻しましょう。 変数の命名規則 変数を定義するのはいいんですが、変数名には命名規則があり、それに沿った名前しかつけることができません。 言語特有の 予約語 を使って変数名にすることはできない 変数名には 半角の英文字, 数字, アンダースコア(_)の組み合わせのみ 変数名を数字から始めることはできない 同じ文字列でも大文字と小文字は別変数として見なされる(ABC!
ホーム 書籍 転職 C++ 入門カリキュラム C言語 入門カリキュラム 便利機能の紹介 マイコン 入門カリキュラム ITRON 入門カリキュラム Python 入門カリキュラム 機能解説まとめ PEP8対処方法まとめ 子供向けプログラミング microbitではじめてみよう 書籍紹介 C++ C言語 C言語機能紹介 マイコン ITRON Python C言語 C言語 スタックメモリ【ローカル変数が確保される仕組みを解説】 メモリの種類の1つであるスタックメモリの特徴を解説します。スタックメモリはローカル変数が配置されるためのメモリであり、メモリの確保・解放の仕組みは、スタックメモリならではの方法で実現されています。その仕組みを学びましょう。 2019. 08. 13 2020. 03. 08 C言語 C言語入門カリキュラム C言語 C言語 プログラムメモリ【書き換えできないメモリ領域とは】 メモリの種類の1つとしてプログラムメモリというものがあります。このメモリ領域は関数や定数といった書き換えできない情報が配置されるメモリです。扱う上で注意点もあるため、それを学んでいきましょう。 2019. 13 C言語 C言語入門カリキュラム C言語 C言語 ソースコードの書き方【サンプルフォーマットを公開】 C言語のソースコードには代表的なものとして「変数定義」「関数定義」を行います。しかし、それ以外にも書くものもあります。一体どこに何を書くべきなのかをサンプルコードも交えて学びましょう。 2019. 06 2020. 01 C言語 C言語入門カリキュラム スポンサー C言語 C言語 ヘッダファイルの書き方【サンプルフォーマットを公開】 C言語の開発ではヘッダファイルというファイルが欠かせません。このヘッダファイルの役割って何なのかご存じですか?ヘッダファイルが一体何の役に立っており、どのように作るべきなのかを学びましょう。 2019. 08 C言語 C言語入門カリキュラム C言語 C言語 関数ポインタ【ポインタを使って関数を呼ぶ仕組み解説】 関数ポインタはポインタの中でも少し変わった役割を持つポインタです。このポインタは一体何の役に立つのか?定義方法や実践的な使い方を学びましょう。 2019. 07. 30 2020. 【C言語】演算子とは. 16 C言語 C言語入門カリキュラム C言語 C言語 「ポインタのポインタ」を図解【イメージで簡単理解!】 C言語の理解できない機能ランキングで上位に位置するポインタのポインタを解説します。ポインタを理解したのに「ポインタのポインタ」が登場し、悩んでいる方は是非この記事を読んで学んでみてください。 2019.
/sample2 call func1(a) a=123 a=456 b=456 a=123 b=123 call func3(&b) a=789 b=789 今度は配列なので a はchar型配列の先頭アドレスになります. なのでポインタに代入する際,先ほどは b = &a でしたが,今度は b = a になっています. コードとコメントから「こう書くとこうなる」を感じ取ってもらえるでしょうか. ちなみに, func2() , func3() 内の や の () を書かないと,前者はコンパイル時にエラーになり,後者は実行時にコアダンプします. 演算に優先順位があり,それが変わってしまうからです. () を書かなかった場合の優先順位を () で表現するとおそらくこうです. func2() ( ** pt) + 1 = '5'; // 代入する式になっていない func3() * ( pt [ 1]) = '8'; // ptに2番目の要素はない func3() の pt について,添え字が 0 の *pt[0] だけは () 無しでも大丈夫です. ポインタについていろいろな例を見てきました. 何かしら理解が深まったり発見があったりすれば幸いです. ちなみに,ポインタ型の宣言は int* b; と int *b; の2通りの書き方がありますが,僕は前者が好きです. 以前は後者で書いていたのですが,どうも間接演算子の * ( *pt = 5 とかの * )と混同して覚えてしまっているような気がして,それからは前者で書いて自分に別物だと言い聞かせています.どちらで書いても構いませんが,別物だということを覚えておいてください. Why not register and get more from Qiita? We will deliver articles that match you By following users and tags, you can catch up information on technical fields that you are interested in as a whole you can read useful information later efficiently By "stocking" the articles you like, you can search right away Sign up Login
main() 内の最初の func1() には pt に変数 a のアドレスを渡していて, func() 内で *pt と書くことで変数 a の中身を操作できます. func2() では, pt がポインタ b のアドレスを格納し,ポインタ b が変数 a のアドレスを格納しているので, *pt で b の中身を, **pt で a の中身を操作できます. 最後の func1() にはポインタ b を渡すことで b が格納している a のアドレスを渡しています. 配列についてはこんなコードを試してみました. sample2.
直接メンバアクセス -> 間接メンバアクセス typeid() 実行時型情報 (C++のみ) const_cast 型変換 (C++のみ) dynamic_cast reinterpret_cast static_cast 前置インクリメント・デクリメント 右から左 + - 単項プラスとマイナス! ~ 論理否定とビット否定 ( type) 型変換 * 間接演算子 (デリファレンス) & アドレス sizeof 記憶量 new new[] 動的記憶域確保 (C++のみ) delete delete[] 動的記憶域解放 (C++のみ). * ->* メンバへのポインタ (C++のみ) * /% 乗算・除算・剰余算 加算・減算 << >> 左シフト・右シフト < <= (関係演算子)小なり・小なりイコール > >= 大なり・大なりイコール ==! = 等価・非等価 ^ | && || c? t: f 条件演算子 右から左 ( throw は結合しない) = += -= 加算代入・減算代入 *= /=%= 乗算代入・除算代入・剰余代入 <<= >>= 左シフト代入・右シフト代入 &= ^= |= ビット積代入・ビット排他的論理和代入・ビット和代入 throw 送出代入 (例外送出: C++のみ), コンマ演算子 演算子の結合性 みなさん、表に書いてある『 結合性 』ってなんだと思いますか?例えば以下のような計算式があったとします 1 + 2 + 3 この計算をするとき、このように考えませんか?
ゲーム音楽で選手団入場にネ… [ 記事へ] アニメ・ゲーム 任天堂楽曲は閉会式? ゲーム音楽で選手団入場にネ… [7月23日 22:15] アニメ・ゲーム 五輪入場行進曲に「MOTHER」なく 糸井重里氏… [7月23日 22:12] アニメ・ゲーム 五輪入場曲にエースコンバット「First Fli… [7月23日 22:04] アニメ・ゲーム 堀井雄二氏「ボクもうるうる」ドラクエテーマ曲で五… [7月23日 21:20] アニメ・ゲーム 声優中島ヨシキがコロナ感染「比較的元気」感染経路… [7月22日 18:42] アニメ・ゲーム 声優の西田望見が31歳誕生日に結婚発表 「マクロ… [7月22日 11:16] アニメ・ゲーム 吉沢亮のヒロアカ愛「報われたなと。夢がかないまし… [7月19日 20:20] アニメ・ゲーム 大竹しのぶ「漁港の肉子ちゃん」舞台挨拶でにじむ元… [7月18日 11:01] アニメ・ゲーム 声優の神谷浩史「劇場は特別な空間、ぜいたくな気持… [7月17日 18:31] 記事一覧
ざっくり言うと 多発性骨髄腫だと告白した宮川花子について、医師の筆者が言及している 医師を信用せずに治療を延期したことを恥じた、という宮川花子の思いを紹介 闘病中の人に同じ失敗をさせないためにも会見を開いたという意思を評価した ライブドアニュースを読もう!
34 件中 1 - 10 件を表示 治療をやめてからのこと。 2019年03月05日 優木瑛美オフィシャルブログ「えみときどきおまめ。」Powered by Ameba ・・・をコメントで頂き、本当に嬉しく思います!
皆さんに笑いでお礼とお返ししていきたいと思います!!! !」 花子は「あと一週間の命から始まった入院闘病生活に打ち勝ちました!」と大変喜び、リハビリは引き続き行っていきつつ、年内復帰に向けて取り組んでいくとしています。
ついこの間まで、芸能人の結婚ラッシュでおめでたい話が続いていたと思ったら、なんと芸能人の病気ラッシュ。 関西のベテラン夫婦漫才「宮川大助・花子」の宮川花子(65)が血液のがんの一種といわれる「症候性多発性骨髄腫」で闘病中と公表。半年ほど前から治療のために休養していたという。関西で活躍しているものと思っていたら、そんなことになっていたとは。村井国夫(75)も軽度の「心筋梗塞」で出演中の舞台を降板した。俳優座・花の15期生といわれた名優たち。原田芳雄や地井武男、夏八木勲、林隆三と次々に亡くなっていった。村井にはまだまだ頑張ってほしい。 元 フジテレビ の笠井信輔(56)は「悪性リンパ腫」。18日には「とくダネ!」で自ら病名と心境を語り、20日の「徹子の部屋」でも「ワイド番組を20年やっていて、有名人の病気や闘病を扱ってきて自分のことだけほっておいてくれというわけにもいかない」と述べた。
FACEBOOK Twitter ヘルプ | 利用規約 | プライバシーポリシー | © LINE Corporation
宮川大助さん: 僕はようやくスタートを切れるかなと思って、喜びの方にとらえているんで。皆さんに女房の元気な姿をちょっとでも見てもらったのはうれしかったですね。女房はまだまだ不安を抱えていて、まだ一人でトイレに行けない段階なんです。それでもがんの症状はほとんどゼロに近い状況なんで、もう復帰にめがけて一生懸命頑張っている状況なんです。正月は自宅で迎えられるように、いま女房は一生懸命頑張っています。 安藤優子: それが一つの目標でいらっしゃるんですね。 宮川大助さん: そうですね。女房は「東京オリンピックは立って歩いて見に行くぞ!」っていうのが目標みたいですけどね。 安藤優子: 会見の会場が一瞬静まり返った瞬間は、余命宣告のことをおっしゃった部分だったと思います。大助さんはその時のことを、どのように思い返していますか?