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

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

その他の例
https://www.jpcert.or.jp/sc-rules/c-msc24-c.html
189デフォルトの名無しさん
垢版 |
2023/12/17(日) 07:31:47.54ID:9k4gJxXV
fopen()
190デフォルトの名無しさん
垢版 |
2023/12/17(日) 08:12:54.14ID:9k4gJxXV
ctime()
191デフォルトの名無しさん
垢版 |
2023/12/31(日) 16:48:51.59ID:vzW4N1bb
fopen
192デフォルトの名無しさん
垢版 |
2024/01/06(土) 17:10:43.88ID:3kEfHLiK
strtok
193デフォルトの名無しさん
垢版 |
2024/02/01(木) 07:45:39.19ID:aKV2ok3G
freopen()
2024/02/01(木) 10:15:46.72ID:oHnzHX84
アセンブラの補助言語に何期待してスレ立ててんだかw
195デフォルトの名無しさん
垢版 |
2024/03/16(土) 16:31:48.55ID:YyexUT5o
tmpnam()
196デフォルトの名無しさん
垢版 |
2024/04/02(火) 13:56:34.07ID:OXdmWprY
getenv
2024/04/02(火) 20:32:38.29ID:yb6rvSIG
知ってる関数を並べるスレ
それにしても知らな過ぎるけどw
2024/04/08(月) 01:34:00.49ID:BIzdd6FB
C言語自体が設計ミス
199デフォルトの名無しさん
垢版 |
2024/04/19(金) 05:42:28.44ID:uD5nyH4z
C言語はUNIXを作るために作ったんだから、それを流用したせいで、アプリケーションの作成には合わないところがあるのは当然。
2024/04/20(土) 15:12:18.54ID:CogYy1zn
https://ja.wikipedia.org/?curid=1022

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

gccならこんなうんちもある
struct unko{
int a[0];
char b[0];
};
209デフォルトの名無しさん
垢版 |
2024/12/13(金) 17:18:33.74ID:cICuvaCO
C++で気をつけなければならないのは
size_t i=10;
double x=3-i;
十分地獄を堪能できる。C言語もunsigned int使えば同じか
210デフォルトの名無しさん
垢版 |
2024/12/13(金) 20:54:34.36ID:3kdcRUf+?2BP(1000)

EchoAPIをVS Codeで使い始めてから、開発プロセスが大きく変わった
211デフォルトの名無しさん
垢版 |
2024/12/21(土) 10:57:59.51ID:bIHzWCsd
strlen
212デフォルトの名無しさん
垢版 |
2024/12/21(土) 17:09:02.79ID:SDOaO/8s
シュトーレン
2024/12/22(日) 22:33:54.16ID:63BRvCCZ
fork;execvp
2024/12/29(日) 07:02:35.25ID:pX0TYs46
C言語には、組み込み関数なんてmainしか無いと思うなあ。
2024/12/29(日) 10:09:42.10ID:Jnwqtt+s
面倒くさいからPOSIXは組込み扱いでいいよ
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況