1. Mocoゲーム >
  2. Mocoゲームブログ >
  3. Chrome の不具合に思う java と C言語の違い


Mocoゲームブログ

ゲーム作成の悲喜こもごも… 開発状況や無料アプリ/上位版アプリに関すること、携帯電話やスマホのこと、公式ストア(Google Play, App Store)でのアプリ公開のこと、プログラミングのこと、更新情報などをアップしています。ガラケー時代からかれこれ15年以上継続しているブログです。Android(java)や iPhone開発(Xcode, Objective-C, C++ によるiOSアプリ開発)に関する技術的なことも時々アップしています。
ツイートする

Chrome の不具合に思う java と C言語の違い

分類: 技術的な話
日付: 2021年07月23日公開

プログラミングの話になりますが、スラドでChrome OS アップデート後にログインできなくなるトラブル、原因は 1 文字の Typoというのがありました。

これよくわかるんですよね。

C言語は & で st という変数の例えば下位4ビット目が立っているかを見るのに

if (st & 0x08)

でコンパイルが通るんですよね。もちろん意図した通りであれば問題ないですが、記事にあるように2つの値が成立しているかを見る場合に

if (v1 && v2)

とするところを

if (v1 & v2)

でも何の警告もなくコンパイルは通ってしまいます。これは怖いと言えば怖いです。java では最初のビット判定は

if ((st & 0x08) != 0)

と書かないと駄目でこれは C言語でも問題なくコンパイルが通るので、java から C言語へのコピペ移植みたいなのは比較的安全でエラーも出にくいと思います。

そのおかげで、java (Android) → iOS (C++) が自分は行えています。

もし C から java だったら、自分も if (st & 0x08) みたいな書き方は多用する方だったので、苦労はしていたと思います。

このようなビット判定に加え、C言語らしい書き方で推奨しているのも見たことがあるのですが、ある変数 v がその変数の値の回数処理するというのを

while (v--) {

}

みたいに書いたり、ある変数 v が 0 じゃなければ処理するというのを

if (v) {

}

と書くのは、java になれると若干違和感があります。C言語と java の違いをわかった上で使うなら問題はないとは思いますが。



アプリゲーム紹介
Mocoゲーム作成で比較的人気の無料ゲーム ガイラルディア1・2・3 を公開中です。Google Play 及び App Store でダウンロード可能です。



関連ブログ

 targetSdkVersion 30 への対応及び Handler() is deprecated への対応
 Could not find or use auto-linked framework 'FBLPromises' のエラー
 Xcode 12.5 のダウンロードが終わらない場合
 「Google」が繰り返し停止していますのこと(修正あり)

前後のブログ

 2021年07月26日 アプリ内課金でアイテムが見つからない場合 Android と iOS そしてその違い(2021年7月現在)
 2021年07月25日 オリンピックとアプリ
 2021年07月24日 オリンピック開会式でのゲーム曲
 2021年07月23日 Chrome の不具合に思う java と C言語の違い
 2021年07月22日 Switch で「もじぴったんアンコール」
 2021年07月21日 ストアの管理画面が日々進化中&成金大作戦究極版のこと
より最新のブログ
より以前のブログ
ブログTOP Mocoゲーム 今日は何の日
最新エントリー

2022年11月30日スプラトゥーン3の大型バージョンアップについていろいろ
2022年11月29日最近よく来るメール(個人以外で)
2022年11月28日いくらマスク氏でもスマホを作るのは無理では?
2022年11月27日残念無念・・・
2022年11月26日ポケモンSV の売上1000万本突破&ポケモンのことをだらだら・・・
2022年11月25日成金大作戦究極版の更新で新たに対応したいこと
より以前のブログ

コンテンツ分類

 DVDの話 (9)
 FLASHの事 (8)
 YouTuberと動画サイト (55)
 いろいろ (360)
 いろいろレビュー (26)
 アプリの事 (436)
 アプリ公開情報 (351)
 アプリ更新/修正情報 (210)
 インターネット全般 (14)
 ガラホの話 (6)
 クイズいろいろ (39)
 ゲーム全般 (587)
 スプラトゥーン (148)
 スポーツの話 (170)
 スマートフォンの話 (640)
 タブレットの話 (88)
 テレビの話 (24)
 ネットの話 (40)
 パソコンの話 (79)
 フォームへの返答 (38)
 プログラミングの話 (82)
 ページの事 (125)
 ページ更新情報 (160)
 ポケモンGO(位置ゲー) (100)
 ミニファミコン (13)
 メルマガの事 (20)
 家電の話 (34)
 開発情報 (322)
 技術的な話 (85)
 携帯の話 (637)
 時事的な話題 (127)
 独り言 (79)

カレンダー

     2022年12月     
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
ブログカレンダー


Follow @MocoGames
ツイッターフォローお願いします。
(C)Mocoゲーム 2005-