C言語の設計ミスった危険な関数トップ10決めようぜ (215レス)
1-

1
(3): 2019/11/21(木)12:23 ID:T7Jjyyy1(1) AAS
gets関数とか

その他の例
外部リンク[html]:www.jpcert.or.jp
186: 2023/10/18(水)14:31 ID:UTD5vf1X(2/2) AAS
visual studioでscanf()使ったらエラーになった
187: 2023/10/20(金)09:24 ID:/M3RKJCH(1) AAS
free()
188: 2023/12/15(金)15:34 ID:dazO4Xak(1) AAS
sprintf()
189: 2023/12/17(日)07:31 ID:9k4gJxXV(1/2) AAS
fopen()
190: 2023/12/17(日)08:12 ID:9k4gJxXV(2/2) AAS
ctime()
191: 2023/12/31(日)16:48 ID:vzW4N1bb(1) AAS
fopen
192: 2024/01/06(土)17:10 ID:3kEfHLiK(1) AAS
strtok
193: 2024/02/01(木)07:45 ID:aKV2ok3G(1) AAS
freopen()
194: 2024/02/01(木)10:15 ID:oHnzHX84(1) AAS
アセンブラの補助言語に何期待してスレ立ててんだかw
195: 2024/03/16(土)16:31 ID:YyexUT5o(1) AAS
tmpnam()
196: 2024/04/02(火)13:56 ID:OXdmWprY(1) AAS
getenv
197: 2024/04/02(火)20:32 ID:yb6rvSIG(1) AAS
知ってる関数を並べるスレ
それにしても知らな過ぎるけどw
198: 2024/04/08(月)01:34 ID:BIzdd6FB(1) AAS
C言語自体が設計ミス
199: 2024/04/19(金)05:42 ID:uD5nyH4z(1) AAS
C言語はUNIXを作るために作ったんだから、それを流用したせいで、アプリケーションの作成には合わないところがあるのは当然。
200: 2024/04/20(土)15:12 ID:CogYy1zn(1) AAS
外部リンク:ja.wikipedia.org

「UNIXを開発するためにC言語が作り出された」と言われることがあるが、「The Development of the C Language」によると、これは正しくなく、経緯は以下の通りである。
C言語は、当初はあくまでもOS上で動くユーティリティを作成する目的で作り出されたものであり、OSのカーネルを記述するために使われるようになるのは後の展開である。
201
(1): 2024/10/02(水)13:09 ID:XbzwGALZ(1) AAS
char *a と char a[] を関数の引数でも一緒にしてしまったところ
202: 2024/10/04(金)12:11 ID:swUgCMz+(1) AAS
>>201
そこは長所では・・・?
203: 2024/10/04(金)13:36 ID:RixEjMnj(1) AAS
長所だらけで困るわ
204: 2024/10/06(日)00:28 ID:k+hD1Cqq(1/2) AAS
配列からポインタへの暗黙の変換があるんだから型としては別で良かったんだよ
おかげで配列全体の値渡しや代入ができなくなってしまった
205: 2024/10/06(日)00:39 ID:MZAtOKFs(1) AAS
無意識にそんなムダなことやられても困る
mallocとか使って明示的にやれるからいいだろ
206
(1): 2024/10/06(日)12:12 ID:onWt8ZIM(1) AAS
値で渡したかったら構造体で包めばいいし
逆に配列を値渡しするような言語って少ないんじゃないの
参照渡しするのばっかりだろ
207: 2024/10/06(日)13:06 ID:k+hD1Cqq(2/2) AAS
一貫性のない型があるとジェネリクスに支障が出る
C++はそれですごい苦労した挙句std::arrayみたいな馬鹿みたいなものができた
208: 2024/10/07(月)10:27 ID:1tKKan7C(1) AAS
>>206
結局フレキシブル構造体が仕様として認められてる以上、実体渡しも信用ならんのよ
struct chinko{
int a;
char b[0];
};

gccならこんなうんちもある
struct unko{
int a[0];
char b[0];
省1
209: 2024/12/13(金)17:18 ID:cICuvaCO(1) AAS
C++で気をつけなければならないのは
size_t i=10;
double x=3-i;
十分地獄を堪能できる。C言語もunsigned int使えば同じか
210: 2024/12/13(金)20:54 ID:3kdcRUf+(1) AAS
BEアイコン:nida.gif
EchoAPIをVS Codeで使い始めてから、開発プロセスが大きく変わった
211: 2024/12/21(土)10:57 ID:bIHzWCsd(1) AAS
strlen
212: 2024/12/21(土)17:09 ID:SDOaO/8s(1) AAS
シュトーレン
213: 2024/12/22(日)22:33 ID:63BRvCCZ(1) AAS
fork;execvp
214: 2024/12/29(日)07:02 ID:pX0TYs46(1) AAS
C言語には、組み込み関数なんてmainしか無いと思うなあ。
215: 2024/12/29(日)10:09 ID:Jnwqtt+s(1) AAS
面倒くさいからPOSIXは組込み扱いでいいよ
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.558s*