!extend:checked:vvvvv:1000:512
C言語の話題のみ取り扱います C++の話題はC++スレへ
質問には最低限の情報(ソース/コンパイラ/OS)を付ける
数行で収まらないソースは以下を適当に使ってURLを晒す
https://paiza.io/
https://ideone.com/
http://codepad.org/
C11
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf
C99
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
http://kikakurui.com/x3/X3010-2003-01.html
C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
JPCERT C コーディングスタンダード
https://www.jpcert.or.jp/sc-rules/
-
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
※前スレ
C言語なら俺に聞け 151
https://mevius.5ch.net/test/read.cgi/tech/1554171817/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
探検
C言語なら俺に聞け 152
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (アウアウウー Sa4f-7DQ/)
2019/06/17(月) 18:27:10.41ID:3L1/L9kLa534デフォルトの名無しさん (ワッチョイ e301-S8wx)
2019/07/16(火) 18:58:26.32ID:uQ5be57j0 pythonでOSやデバドラ書けるようになったら考えるわ
535デフォルトの名無しさん (アークセー Sx3b-GinL)
2019/07/16(火) 20:05:19.62ID:WsWptbblx #define xxx 06
#define yyy 07
//#define zzz 08 // なぜかエラーになる
#define yyy 07
//#define zzz 08 // なぜかエラーになる
536デフォルトの名無しさん (アウアウウー Sa47-KZVA)
2019/07/16(火) 20:31:07.37ID:K50k857la なぜかはひみつ
537デフォルトの名無しさん (ブーイモ MM26-cAz/)
2019/07/16(火) 20:54:46.50ID:GCGNUpCjM >>535
なんてありがちな…
なんてありがちな…
538デフォルトの名無しさん (ブーイモ MM26-cAz/)
2019/07/16(火) 21:03:30.93ID:GCGNUpCjM539デフォルトの名無しさん (アウアウウー Sa47-KZVA)
2019/07/16(火) 21:05:08.13ID:K50k857la 祈りが足りないからだな
540デフォルトの名無しさん (ワッチョイ e301-S8wx)
2019/07/16(火) 21:08:14.38ID:uQ5be57j0 ちょっと前に8進数が〜ってやってるのに
あ、ネタかw
あ、ネタかw
541デフォルトの名無しさん (ワッチョイ 5ba0-P44A)
2019/07/16(火) 21:22:48.20ID:/Cc9wbE10 このスレの人って少し前のレス読まないよね
542デフォルトの名無しさん (ワッチョイ e368-BPOI)
2019/07/16(火) 21:31:28.73ID:7JXDuVC90 const char *sの順番が納得いかない
直感的にはchar * const sだろうが!!
直感的にはchar * const sだろうが!!
543デフォルトの名無しさん (ワッチョイ 5fc3-Z5NF)
2019/07/16(火) 21:32:10.10ID:W8tOKWg20 char const*だろ?
544デフォルトの名無しさん (ワッチョイ db8f-AthE)
2019/07/16(火) 22:16:46.03ID:Qe+dZ6A/0 * const char s
じゃね?
じゃね?
545デフォルトの名無しさん (ワッチョイ db8f-AthE)
2019/07/16(火) 22:17:34.37ID:Qe+dZ6A/0 おれは何を言ってるんだ??
546デフォルトの名無しさん (アークセー Sx3b-GinL)
2019/07/16(火) 22:20:37.80ID:dxLim7GAx >>542
>const char *sの順番が納得いかない
>直感的にはchar * const sだろうが!!
前者はポイントされる文字列が const で、後者はポインタ自体が const でしょ
>const char *sの順番が納得いかない
>直感的にはchar * const sだろうが!!
前者はポイントされる文字列が const で、後者はポインタ自体が const でしょ
547デフォルトの名無しさん (ワッチョイ e301-S8wx)
2019/07/16(火) 22:42:49.53ID:uQ5be57j0 const char* const s
これも直感的じゃないって言うんだろうか
これも直感的じゃないって言うんだろうか
548デフォルトの名無しさん (アークセー Sx3b-GinL)
2019/07/16(火) 22:43:19.23ID:dxLim7GAx 546です
すみません、それを踏まえてということか…
すみません、それを踏まえてということか…
549デフォルトの名無しさん (ワッチョイ 5a73-q5pO)
2019/07/16(火) 22:50:32.56ID:g+WSNcLQ0 const は後置で書いたほうが整合性が取れる
char const * const s:
しかし、見た目的にかわいいのは前置である
const char * s;
私はかわいいのが好きである
よって前置は使わない
char const * const s:
しかし、見た目的にかわいいのは前置である
const char * s;
私はかわいいのが好きである
よって前置は使わない
550デフォルトの名無しさん (ワッチョイ 5a73-q5pO)
2019/07/16(火) 22:58:11.13ID:g+WSNcLQ0 そこで私が提案したいのが「strong」である
strongは修飾したデータをすべてconstにする
つまり
char const * const s;
と
strong char * s;
は等価である
strongは修飾したデータをすべてconstにする
つまり
char const * const s;
と
strong char * s;
は等価である
551デフォルトの名無しさん (ワッチョイ ba52-QpLE)
2019/07/16(火) 23:13:59.86ID:ICazHXPW0 >>550
安易な予約語の追加は嫌われるよ
安易な予約語の追加は嫌われるよ
552デフォルトの名無しさん (ワッチョイ 4e63-P44A)
2019/07/16(火) 23:18:11.31ID:EySzsoWc0 「strongがやられたようだな…」
「フフフ…奴は四天王の中でも最弱…」
「フフフ…奴は四天王の中でも最弱…」
553デフォルトの名無しさん (ワッチョイ 5ba0-P44A)
2019/07/16(火) 23:19:03.80ID:/Cc9wbE10 <strong>char* s</strong>
554デフォルトの名無しさん (ワッチョイ e301-P44A)
2019/07/16(火) 23:22:51.61ID:uQ5be57j0 stringと間違えそうで嫌だなw
readonlyはc#で使ってるしな
やっぱconstだな
readonlyはc#で使ってるしな
やっぱconstだな
555デフォルトの名無しさん (ワッチョイ 7602-24gz)
2019/07/16(火) 23:40:17.89ID:awioItM70 大文字で CONST にするとか。
556デフォルトの名無しさん (スップ Sd5a-sMSa)
2019/07/17(水) 04:24:07.40ID:CqcyHUxLd フン
char *const_s
char *const_s
557デフォルトの名無しさん (ワッチョイ e368-BPOI)
2019/07/17(水) 06:33:32.66ID:Pp4wfZXK0 >>546
const int a → constなint型のa
const char *s → constなchar *型のs
constなのはchar *つまりポインタ(直感)
char * const s → char *型のconstなs
constなのはsつまり文字列自体(直感)
なんで逆!!
const int a → constなint型のa
const char *s → constなchar *型のs
constなのはchar *つまりポインタ(直感)
char * const s → char *型のconstなs
constなのはsつまり文字列自体(直感)
なんで逆!!
558デフォルトの名無しさん (ワッチョイ 73f6-AvHN)
2019/07/17(水) 06:46:44.61ID:NB17uhF90 > const char *s → constなchar *型のs
ギャグだよな?
ギャグだよな?
559デフォルトの名無しさん (ワッチョイ 9ada-Bj8P)
2019/07/17(水) 06:57:50.40ID:i06pHchL0 宣言は右から左に読む
const等の修飾は左にかかる
char const * const s; // sは、const *である、const char型の
右にかかるなら↓のように書けないとおかしいがこれは構文エラーである
const char const *s;
変数名はただの識別子で、ある領域にsという名前を付けただけにすぎない
constやvolatileは型修飾子であり、これらが付くのは型に対してである
〜という領域を、以後sと呼ぶ、である
const等の修飾は左にかかる
char const * const s; // sは、const *である、const char型の
右にかかるなら↓のように書けないとおかしいがこれは構文エラーである
const char const *s;
変数名はただの識別子で、ある領域にsという名前を付けただけにすぎない
constやvolatileは型修飾子であり、これらが付くのは型に対してである
〜という領域を、以後sと呼ぶ、である
560デフォルトの名無しさん (ワッチョイ 73f6-AvHN)
2019/07/17(水) 07:14:03.66ID:NB17uhF90 ちげーよ
宣言は真ん中から左右に読むんだよ
char const *(* const s)[1];
宣言は真ん中から左右に読むんだよ
char const *(* const s)[1];
561443 (ワッチョイ 9a2c-i8Xk)
2019/07/17(水) 09:21:48.88ID:u050lnGw0 >>526
引数チェックに関しては、Java のコーディングルールでは、
外部の人用のAPI、つまりpublic な関数には、必要
一方、そのモジュール・クラスの実装者が使う、
内部的なAPI、つまりprivate な関数には、いらない
既にどこかで、エラーチェックしてるから、何回も同じエラーチェックするのは、無駄
引数チェックに関しては、Java のコーディングルールでは、
外部の人用のAPI、つまりpublic な関数には、必要
一方、そのモジュール・クラスの実装者が使う、
内部的なAPI、つまりprivate な関数には、いらない
既にどこかで、エラーチェックしてるから、何回も同じエラーチェックするのは、無駄
562デフォルトの名無しさん (ワッチョイ 23b3-15OI)
2019/07/17(水) 21:08:01.97ID:E0YvS3zE0 const char *sは*sがconst
つまりポインタsの指すアドレスにある値が不変だけどsがどこを指すのかは可変
char *const sはsがconst
つまりポインタsがどこを指すかは不変だけどsの指すアドレスにある値は可変
大体こんな認識で合ってる?
つまりポインタsの指すアドレスにある値が不変だけどsがどこを指すのかは可変
char *const sはsがconst
つまりポインタsがどこを指すかは不変だけどsの指すアドレスにある値は可変
大体こんな認識で合ってる?
563デフォルトの名無しさん (ワッチョイ e368-BPOI)
2019/07/17(水) 23:04:57.90ID:Pp4wfZXK0 あってるけど納得いかないって話
1つ目がまず何で*sにかかるんだよ
自然に読んだらconstはchar *にかかるだろ
右から読むとか頭おかしいわ、アラビア語かよ
1つ目がまず何で*sにかかるんだよ
自然に読んだらconstはchar *にかかるだろ
右から読むとか頭おかしいわ、アラビア語かよ
>>563
char * s;
に 1 個の const を追加するとき、形式的に追加できる場所は 4 箇所
a) char * s const;
b) char * const s;
c) char const * s;
d) const char * s;
このうち a) はコンパイルできない
b) c) は可能だが、の二つの間で意味は異なる
d) は本来ならエラーであるべきだと私は考えているが、実際には c) と一緒の意味になっている
char * s;
に 1 個の const を追加するとき、形式的に追加できる場所は 4 箇所
a) char * s const;
b) char * const s;
c) char const * s;
d) const char * s;
このうち a) はコンパイルできない
b) c) は可能だが、の二つの間で意味は異なる
d) は本来ならエラーであるべきだと私は考えているが、実際には c) と一緒の意味になっている
565デフォルトの名無しさん (ワッチョイ 2395-q5pO)
2019/07/17(水) 23:34:56.30ID:RL7WDafS0 C言語使う時はいつ?
早いコードが欲しい時
メモリー消費に無駄のないコードが欲しい時
他ある?
早いコードが欲しい時
メモリー消費に無駄のないコードが欲しい時
他ある?
>>565
他の言語はほとんどわからず(かじってはみたものの使えるまでにはMPがあがらず)、C/C++ でしかまともに書けないし発想できないからです…
他の言語はほとんどわからず(かじってはみたものの使えるまでにはMPがあがらず)、C/C++ でしかまともに書けないし発想できないからです…
567デフォルトの名無しさん (ワッチョイ db8f-AthE)
2019/07/17(水) 23:42:49.57ID:FDkzfNlT0 >>563
実はアラビア語って可能性はないのか?
実はアラビア語って可能性はないのか?
568デフォルトの名無しさん (ワッチョイ e368-BPOI)
2019/07/17(水) 23:49:47.36ID:Pp4wfZXK0 そもそもconst char *sの宣言の時の切れ目がconst / char / *s なのも何だかなぁ
const / char * / s でconstはchar *にかかれよjk
現実に間違ってるのは渋々受け入れてるけど開発者が許せない
const / char * / s でconstはchar *にかかれよjk
現実に間違ってるのは渋々受け入れてるけど開発者が許せない
569デフォルトの名無しさん (アークセー Sxa3-F8Mm)
2019/07/18(木) 00:00:28.28ID:OLFUgkogx >>564
自分は b or(and) d かなー
自分は b or(and) d かなー
570デフォルトの名無しさん (ワッチョイ 3f52-5sVo)
2019/07/18(木) 00:33:34.97ID:Nr80YdQr0 >>565
他に思い付くところとしては、
組み込み環境などで、C言語以外の選択肢がない、または他の言語で実行できる環境を整えるよりCを使った方が楽な場合。
外部のライブラリのインタフェースがC言語で、呼び出す部分をCで作る方が楽な場合。
バイナリファイルの操作などポインタ操作を使って実装しやすい場合。
他に思い付くところとしては、
組み込み環境などで、C言語以外の選択肢がない、または他の言語で実行できる環境を整えるよりCを使った方が楽な場合。
外部のライブラリのインタフェースがC言語で、呼び出す部分をCで作る方が楽な場合。
バイナリファイルの操作などポインタ操作を使って実装しやすい場合。
571デフォルトの名無しさん (ワッチョイ 3f52-5sVo)
2019/07/18(木) 00:48:28.58ID:Nr80YdQr0572デフォルトの名無しさん (ワッチョイ 4fd2-ulaa)
2019/07/18(木) 05:33:10.45ID:yO5P6Jqp0 char *s
の意味は*sはchar型だよって意味で
sはchar *型だよって意味じゃないよ
の意味は*sはchar型だよって意味で
sはchar *型だよって意味じゃないよ
573デフォルトの名無しさん (スップ Sddf-1UnR)
2019/07/18(木) 05:43:05.99ID:xY9KzRxOd574デフォルトの名無しさん (ワッチョイ 0ff6-0ngu)
2019/07/18(木) 06:48:06.17ID:2qyz/4gG0575デフォルトの名無しさん (ドコグロ MM5f-FX/1)
2019/07/18(木) 07:54:18.60ID:kb0ZHGx0M *と*const があると憶えるべき。
576デフォルトの名無しさん (アウアウウー Sad3-9T1T)
2019/07/18(木) 09:56:03.22ID:q9HPUerJa >>563
ポインタを表す * が型にくっついてるんじゃなくて変数にくっついてるからでは?
分かりにくいなら typedef でポインタの型を作ってそれを使えばいいんじゃないな。
右から読む事に関しては英語を日本語に翻訳する時に順序を入れ換えた方が自然な感じになる事があるのでなんとも言えんな。漢文のレ点みたいなものもあるしな。
日本語とは逆順の方が自然な表現になる言語はある。そして歴史的な事情で混在してしまっているのもある(アメリカでの年月日が月日年の順だとか)。
生まれながらにしてその言語使ってればその人にとってはそれが一番自然な表現だからな。
ポインタを表す * が型にくっついてるんじゃなくて変数にくっついてるからでは?
分かりにくいなら typedef でポインタの型を作ってそれを使えばいいんじゃないな。
右から読む事に関しては英語を日本語に翻訳する時に順序を入れ換えた方が自然な感じになる事があるのでなんとも言えんな。漢文のレ点みたいなものもあるしな。
日本語とは逆順の方が自然な表現になる言語はある。そして歴史的な事情で混在してしまっているのもある(アメリカでの年月日が月日年の順だとか)。
生まれながらにしてその言語使ってればその人にとってはそれが一番自然な表現だからな。
577デフォルトの名無しさん (スップ Sddf-1UnR)
2019/07/18(木) 10:04:50.81ID:xY9KzRxOd578デフォルトの名無しさん (ワッチョイ 3f28-t2IU)
2019/07/18(木) 21:25:27.83ID:PbeogWAD0 この話は何時も混乱するんだけど
結局の所は
自分の言葉で理解するまでやる
これをやらないと混乱してしまう
なぜそうなってしまったのか?
という視点で解釈しようとしないと
なかなかにc言語って難しい
その辺は例のc言語ポインタにのみついて書かれた本
あれを読んで
後は何とか自分の言葉で理解して解釈するしか方法が無い
それとこんなになってしまっている原因に
キーボード上の記号が少ない
というのもある
basic何かでは記号類は四則演算類だけ使って
なるだけ英単語?を使って記述するようになっている
だから使う場所によって記号の意味が違う
なんていうのが起こりにくくなってる
ある意味c言語が普及してしまったのはプログラミング世界にとっては不幸なのかもしれない
結局の所は
自分の言葉で理解するまでやる
これをやらないと混乱してしまう
なぜそうなってしまったのか?
という視点で解釈しようとしないと
なかなかにc言語って難しい
その辺は例のc言語ポインタにのみついて書かれた本
あれを読んで
後は何とか自分の言葉で理解して解釈するしか方法が無い
それとこんなになってしまっている原因に
キーボード上の記号が少ない
というのもある
basic何かでは記号類は四則演算類だけ使って
なるだけ英単語?を使って記述するようになっている
だから使う場所によって記号の意味が違う
なんていうのが起こりにくくなってる
ある意味c言語が普及してしまったのはプログラミング世界にとっては不幸なのかもしれない
579デフォルトの名無しさん (ワッチョイ 7f63-jGuh)
2019/07/18(木) 21:30:10.98ID:1zgaXsge0 C言語って初心者向けに作られたものではないと思う
>>578
私も最初に C をやったときには、ここまで流行るとは思わなかったんです、むしろ pascal の方が筋がいいと思っていたのですが、どうしてこうなってしまったのでしょうか?
私も最初に C をやったときには、ここまで流行るとは思わなかったんです、むしろ pascal の方が筋がいいと思っていたのですが、どうしてこうなってしまったのでしょうか?
>>579
当時は初心者用とかは特に無くて、BASIC でもある程度できる人はすぐに peek, poke を連発するようになったものです、最近の人は甘えていると思います
当時は初心者用とかは特に無くて、BASIC でもある程度できる人はすぐに peek, poke を連発するようになったものです、最近の人は甘えていると思います
582デフォルトの名無しさん (ワッチョイ 0f01-7lXP)
2019/07/18(木) 21:41:19.07ID:AzHVv8Pq0 >>580
UNIXがCで云々というのもあるけど、良い意味で高級アセンブラとして使い勝手が良かったからじゃないかな?
UNIXがCで云々というのもあるけど、良い意味で高級アセンブラとして使い勝手が良かったからじゃないかな?
583デフォルトの名無しさん (ワッチョイ 0fab-Pjse)
2019/07/18(木) 22:00:46.19ID:8m1lI2X40 厳格で融通がきかないと嫌われる
pascalはそんな感じ
pascalはそんな感じ
>>583
delphi は結構流行ったと思ったんですけれど…
delphi は結構流行ったと思ったんですけれど…
585デフォルトの名無しさん (ワッチョイ 3fa5-xTH7)
2019/07/18(木) 22:18:08.64ID:0kCblb2b0 pascal失速最大の原因は:=だろう
これを採用している言語はもう一つも無い
プログラミング業界最大かつ唯一にして不可侵の大例外を抱えてるのがpascalだ
これを採用している言語はもう一つも無い
プログラミング業界最大かつ唯一にして不可侵の大例外を抱えてるのがpascalだ
586デフォルトの名無しさん (ワッチョイ 7f63-jGuh)
2019/07/18(木) 22:30:23.30ID:1zgaXsge0 pascalで開発したアプリっていうと
JaneStyleが有名かな?
JaneStyleが有名かな?
587デフォルトの名無しさん (ワッチョイ 7f63-jGuh)
2019/07/18(木) 22:32:00.45ID:1zgaXsge0 厳格で融通がきかないのは、教育用として最適だと思う
588デフォルトの名無しさん (ワッチョイ 0f01-sqrU)
2019/07/18(木) 22:35:15.64ID:ugDCzjFC0 pascalでUNIX張りのOS書いていれば流行ったかもね
589デフォルトの名無しさん (ワッチョイ ff02-lraP)
2019/07/19(金) 00:19:03.24ID:7Hdy7m6i0 >>585
Modula-2は:=だったような気がする。
Modula-2は:=だったような気がする。
590デフォルトの名無しさん (ワッチョイ ff02-lraP)
2019/07/19(金) 00:22:05.35ID:7Hdy7m6i0591デフォルトの名無しさん (ワッチョイ 3fa5-xTH7)
2019/07/19(金) 00:25:42.16ID:Mih8lrFJ0 もう一つが奥の深さでC言語ではポインタが奥の深い箇所にあたる
この難易度が絶妙で難しい難しいと言われていて初学者には適度に難しいので挫折者が増える、
挫折者の総量が言語の価値を決定する
教育用に作られた言語は難しい箇所とか理屈に合わない箇所とか奥の深い箇所とかが無いのでオカルトとしての魅力が無い
学習曲線がいびつじゃないと流行しない
この難易度が絶妙で難しい難しいと言われていて初学者には適度に難しいので挫折者が増える、
挫折者の総量が言語の価値を決定する
教育用に作られた言語は難しい箇所とか理屈に合わない箇所とか奥の深い箇所とかが無いのでオカルトとしての魅力が無い
学習曲線がいびつじゃないと流行しない
592デフォルトの名無しさん (ワッチョイ 3f79-k+pP)
2019/07/19(金) 00:30:44.87ID:QK1dwfXD0 ポインタはただの入り口だろ
Cは入り口で躓く奴が多いだけで奥は寧ろ浅い
Cは入り口で躓く奴が多いだけで奥は寧ろ浅い
593デフォルトの名無しさん (ワッチョイ 7f63-jGuh)
2019/07/19(金) 00:36:04.81ID:nbu0jJrl0 ポインタ使わないでもC言語ってプログラム書けるんだよな
無理して難しいことをしなくても良いと思う
ちゃんと動くかどうかの方が重要
無理して難しいことをしなくても良いと思う
ちゃんと動くかどうかの方が重要
594デフォルトの名無しさん (ワッチョイ 3f79-k+pP)
2019/07/19(金) 00:38:14.85ID:QK1dwfXD0 ポインタを使わないならCを使わない方がいい
595デフォルトの名無しさん (ワッチョイ 8f8f-1UnR)
2019/07/19(金) 01:10:46.83ID:0vO2r76S0 超無理矢理ならポインタ使わずになんでもできるんかな?
いずれにせよポインタ理解してないとライブラリ使えなくて詰むでしょ。たぶん突然落ちたりメモリリークだらけのプログラムができあがるはず。
いずれにせよポインタ理解してないとライブラリ使えなくて詰むでしょ。たぶん突然落ちたりメモリリークだらけのプログラムができあがるはず。
596デフォルトの名無しさん (ワッチョイ 7f63-jGuh)
2019/07/19(金) 01:25:31.41ID:nbu0jJrl0 グローバル領域に予め必要な変数や配列確保しておけば
メモリーリークが発生する余地はないw
メモリーリークが発生する余地はないw
597デフォルトの名無しさん (ワッチョイ 3f79-k+pP)
2019/07/19(金) 01:28:45.01ID:QK1dwfXD0 ネタで言ってるのか本気で言ってるのか判断が付かない
598デフォルトの名無しさん (ワッチョイ 0f01-/VB7)
2019/07/19(金) 01:46:29.51ID:ZOnA3nWq0 ポインタ難しいって言われてるけどそんなに難しいか?
メモリイメージできれば理解できると思うけどな
メモリイメージできれば理解できると思うけどな
599デフォルトの名無しさん (ワッチョイ 3fc5-k+pP)
2019/07/19(金) 02:19:29.42ID:1jezjf9K0 俺はポインタは難しいことがわかってたから、一度にすべて理解しようとしなかった
数年使って徐々に理解した
それが正解だった
数年使って徐々に理解した
それが正解だった
600デフォルトの名無しさん (ワッチョイ 0f95-k+pP)
2019/07/19(金) 02:49:16.94ID:ApXEphk20 初期化してないポインタにアクセスするとどうなっちゃうの
とか危険そうなのは試してないからわからないが
ハードウェアのイメージがあれば難しさはあまりない
(命名規則で Xxx_p と書いておけば
とか危険そうなのは試してないからわからないが
ハードウェアのイメージがあれば難しさはあまりない
(命名規則で Xxx_p と書いておけば
601デフォルトの名無しさん (ワッチョイ 0ff6-0ngu)
2019/07/19(金) 06:09:16.79ID:8762T9lH0 > (命名規則で Xxx_p と書いておけば
システムハンガリアンは大大大大大嫌い
システムハンガリアンは大大大大大嫌い
602デフォルトの名無しさん (ドコグロ MM5f-TsWF)
2019/07/19(金) 07:17:09.85ID:gH0zRzIgM603デフォルトの名無しさん (ワッチョイ 7f7c-jGuh)
2019/07/19(金) 09:10:50.31ID:EJb/7aTM0604デフォルトの名無しさん (アウアウウー Sad3-9T1T)
2019/07/19(金) 09:29:24.25ID:uab/wKdga >>580
マイコン用の小さいコードも作れるから。
昔のマイコンやPCはメモリが物凄く少ないのでその辺は重要。
少なくとも毎回でかいランタイムライブラリがくっついてしまうようではダメだ。
それと元々 UNIX の記述用に使ってた言語なので Linux 等の互換OSでも使われていて、そういうのが徐々に広まっていったので、それを通してCが流行った面もあると思う。
マイコン用の小さいコードも作れるから。
昔のマイコンやPCはメモリが物凄く少ないのでその辺は重要。
少なくとも毎回でかいランタイムライブラリがくっついてしまうようではダメだ。
それと元々 UNIX の記述用に使ってた言語なので Linux 等の互換OSでも使われていて、そういうのが徐々に広まっていったので、それを通してCが流行った面もあると思う。
605デフォルトの名無しさん (アウアウウー Sad3-9T1T)
2019/07/19(金) 09:39:17.61ID:uab/wKdga606デフォルトの名無しさん (ワッチョイ 3fc5-k+pP)
2019/07/19(金) 11:29:42.41ID:1jezjf9K0607デフォルトの名無しさん (ワッチョイ 7f63-jGuh)
2019/07/19(金) 11:43:44.67ID:nbu0jJrl0 プログラムはZ80からなので、当たり前のようにアセンブラから学習した
CPUの仕組みを学ぶのにちょうど良かった気がする
CPUの仕組みを学ぶのにちょうど良かった気がする
608デフォルトの名無しさん (ワッチョイ 0ff6-0ngu)
2019/07/19(金) 12:47:23.54ID:8762T9lH0 Z80だとパイプラインとかあんまり憶えないよな
でRISCブームのとき苦労させられたと
でRISCブームのとき苦労させられたと
609デフォルトの名無しさん (アークセー Sxa3-7lXP)
2019/07/19(金) 13:03:51.18ID:hLCIQJ7mx まぁZ80全盛期にパイプラインしてたCPUなんて限られてたしな。
そういう汎用コンピータはほぼ高級言語使われてたし。
そういう汎用コンピータはほぼ高級言語使われてたし。
610デフォルトの名無しさん (ワッチョイ 0ff6-0ngu)
2019/07/19(金) 13:07:02.40ID:8762T9lH0 6502とか
611デフォルトの名無しさん (ワッチョイ 7f7c-jGuh)
2019/07/19(金) 13:28:17.26ID:EJb/7aTM0612デフォルトの名無しさん (ワッチョイ 0f01-/VB7)
2019/07/19(金) 14:13:06.92ID:ZOnA3nWq0 ムカデ長老を見習え
613デフォルトの名無しさん (ワッチョイ 0f68-WZlQ)
2019/07/20(土) 21:04:06.20ID:lWqONft90 泣いてる顔文字→( ; ; )がforの無限ループにしか見えないのですが、職業病でしょうか?
614デフォルトの名無しさん (ワッチョイ 3f77-0ngu)
2019/07/20(土) 21:31:18.65ID:TRa6Slo50 8086のアセンブラはセグメントで挫折する・・・と言われてたけど
Z80やってたらすんなり理解できたな。
Z80やってたらすんなり理解できたな。
615デフォルトの名無しさん (ワッチョイ 8fa0-jGuh)
2019/07/21(日) 01:27:26.84ID:3tY7pLz50616デフォルトの名無しさん (ワッチョイ 8f8f-1UnR)
2019/07/21(日) 04:14:55.91ID:Nmc6oncn0 >>615
草、見えたことないわw
草、見えたことないわw
617デフォルトの名無しさん (ワッチョイ 3fad-lraP)
2019/07/21(日) 06:51:52.49ID:F3an1Rtm0618デフォルトの名無しさん (ワッチョイ 3f01-TsWF)
2019/07/21(日) 08:20:20.57ID:/atv33Bt0 >>608
わかりやすいけど面倒だよね
わかりやすいけど面倒だよね
619デフォルトの名無しさん (ワッチョイ 4f61-aZqd)
2019/07/21(日) 15:59:50.66ID:FmQzr+LX0620デフォルトの名無しさん (ワッチョイ cfc3-oOeU)
2019/07/21(日) 16:10:09.79ID:g8U8cyIO0 forの方が短くてすむじゃないか
621デフォルトの名無しさん (ワッチョイ 0f01-7lXP)
2019/07/21(日) 16:20:48.28ID:PhbbaTTy0622デフォルトの名無しさん (ワッチョイ 0f95-k+pP)
2019/07/21(日) 16:27:59.21ID:m/GaQUZU0 空白のcontinue節みたいなのに入る必要がないから
ちょっとwhileのほうが早いイメージ
ちょっとwhileのほうが早いイメージ
623デフォルトの名無しさん (ワッチョイ cfc3-oOeU)
2019/07/21(日) 16:43:59.35ID:g8U8cyIO0 >>622
インタープリターじゃないんだからさ
インタープリターじゃないんだからさ
624デフォルトの名無しさん (ワッチョイ 3f01-TsWF)
2019/07/21(日) 16:52:32.65ID:/atv33Bt0625デフォルトの名無しさん (ワッチョイ 0f48-jGuh)
2019/07/21(日) 18:08:15.14ID:Q0wcPMRB0 for (;;) とwhile (1) がどっちがぱっと見分かりやすいか戦争勃発しますか?
あとfor派は;;周りにスペースを入れるか入れないかでさらに細かく派閥が分かれていると聞きました!
あとfor派は;;周りにスペースを入れるか入れないかでさらに細かく派閥が分かれていると聞きました!
626デフォルトの名無しさん (ワッチョイ 4f61-aZqd)
2019/07/21(日) 18:19:58.86ID:FmQzr+LX0 >>625
まさに永久ループ戦争!
まさに永久ループ戦争!
627デフォルトの名無しさん (ワッチョイ ff2f-Im00)
2019/07/21(日) 18:30:02.78ID:+S54SSox0 字下げのいらないgotoも参戦
628デフォルトの名無しさん (ワッチョイ 0f48-jGuh)
2019/07/21(日) 18:32:50.79ID:Q0wcPMRB0 あ、do {} while(1);派も出てくるとおもうので皆さん頑張ってください応援してます
629デフォルトの名無しさん (ワッチョイ cfc3-oOeU)
2019/07/21(日) 18:38:59.23ID:g8U8cyIO0 do while(0)は便利
>>629
それは #define で使うときだけでしょう?
それは #define で使うときだけでしょう?
631デフォルトの名無しさん (ワッチョイ cfc3-oOeU)
2019/07/21(日) 18:44:37.26ID:g8U8cyIO0 いや、エラー判定とかでもよく使うだろ?
632デフォルトの名無しさん (アークセー Sxa3-F8Mm)
2019/07/21(日) 18:48:06.96ID:I0JRxlnTx for (;;) は forever と読むとか
633デフォルトの名無しさん (ワッチョイ 3f01-TsWF)
2019/07/21(日) 18:50:32.60ID:/atv33Bt0 バッドノウハウに近いが
do {
if(...) break;
…
if(…) break;
…
} while(0);
みたいなのは昔書いてたわ
do {
if(...) break;
…
if(…) break;
…
} while(0);
みたいなのは昔書いてたわ
634デフォルトの名無しさん (ワッチョイ 0f48-jGuh)
2019/07/21(日) 18:52:10.72ID:Q0wcPMRB0 do {} while (0); の意味と目的【do while false イディオムの利点】 | MaryCore
ttps://marycore.jp/coding/do-while-false-idiom/
ttps://marycore.jp/coding/do-while-false-idiom/
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★4 [七波羅探題★]
- 【地震速報】青森県で震度6強 沿岸部に津波警報 ★6 [ぐれ★]
- 「日の丸にバツ印」掲げた大学生 あいまいな国旗損壊罪に「怖い」 The Mainichi [少考さん★]
- 【テレビ】25年ぶり復活「炎のチャレンジャー」南原清隆&菊池風磨がMC 懐かし「電流イライラ棒」も [湛然★]
- 【音楽】BARBEE BOYS・KONTAが事故で四肢麻痺を公表、新体制で活動は継続 [少考さん★]
- 中国「捜索レーダー起動は各国の通常の手法」 火器管制用か回答せず [蚤の市★]
- ( ・᷄ὢ・᷅ )あ?
- 千葉県民だけどなんか地震あったらしいな
- ぺこーら、地震で同僚が次々配信を止めるなか強行し続けるので悪目立ちするwww [268244553]
- 高市総理、睡眠時間30分😢
- 秋田大学のホームページがつながらなくなって1日以上経つのだが
- 【速報】高市早苗、起床 [779938112]
