1 名前:デフォルトの名無しさん mailto:sage [2022/08/04(木) 23:32:27.83 ID:yWVViPyIM.net] !extend:checked:vvvvv:1000:512 (新スレ立ての際上記コマンドを2行書き込んでください) C言語の話題のみ取り扱います C++の話題はC++スレへ 質問には最低限の情報(ソース/コンパイラ/OS)を付ける 数行で収まらないソースは以下を適当に使ってURLを晒す https://paiza.io/ https://ideone.com/ codepad.org/ C17 www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/n4713.pdf C11 www.open-std.org/jtc1/sc22/WG14/www/docs/n1570.pdf C2x ドラフト www.open-std.org/jtc1/sc22/wg14/www/docs/n2731.pdf C99 www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf kikakurui.com/x3/X3010-2003-01.html C FAQ 日本語訳 www.kouno.jp/home/c_faq/ JPCERT C コーディングスタンダード https://www.jpcert.or.jp/sc-rules/ ※前スレ C言語なら俺に聞け 158 https://mevius.5ch.net/test/read.cgi/tech/1640401906/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
944 名前:デフォルトの名無しさん mailto:sage [2022/12/25(日) 15:44:19.19 ID:mgz0dfZnM.net] exeとcomってファイル先頭のエントリーアドレスの解釈が違ってなかったっけ? 拡張子だけ変更しても暴走したような気がする
945 名前:デフォルトの名無しさん mailto:sage [2022/12/25(日) 16:11:57.52 ID:zQEQkIp7H.net] >>924 自力でシステムコール(あるいは farmalloc()) と far ポインタを扱うんだったら出来る
946 名前:デフォルトの名無しさん mailto:sage [2022/12/25(日) 16:49:45.05 ID:FlWfyDt20.net] OSは、EXEかCOMかの判定をファイル先頭2バイトで行うので 拡張子は同名実行ファイルの優先度以外には影響ありません
947 名前:デフォルトの名無しさん [2022/12/25(日) 18:17:37.99 ID:4l2e8mxL0.net] 何のOSの話なんだよ?
948 名前:デフォルトの名無しさん mailto:sage [2022/12/25(日) 22:36:13.77 ID:R9zYhJab0.net] >>933 MS-DOS
949 名前:デフォルトの名無しさん (US 0Hd7-ij7E) mailto:sage [2022/12/25(日) 23:53:11.65 ID:3pvnVlsWH.net] >>925 LSI-C試食版のコード64KB の制限はなんとかなりませんかね?
950 名前:デフォルトの名無しさん (ワッチョイ b363-dxp0) mailto:sage [2022/12/26(月) 00:03:12.26 ID:eX0Ff8H70.net] 試食版のコードで生成する実行プログラムを、動かす環境もってるの?
951 名前:デフォルトの名無しさん (US 0Hd7-ij7E) mailto:sage [2022/12/26(月) 01:36:38.31 ID:xk9EZjkPH.net] >>936 t
952 名前:akeda-toshiya.my.coocan.jp/msdos/index.html [] [ここ壊れてます]
953 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 10:26:13.14 ID:eX0Ff8H70.net] W32が動く環境があるなら、そこでネイティブに使えるコンパイラにした方が良くないかな? 試食版って事はそれを業務で使うわけではないんでしょ?
954 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 11:02:09.22 ID:+xP92Jxa0.net] 8086 の SBC とか使って趣味でなんか作ってるんじゃね 俺も会社でだけど 80186 ボードのために Visual C++ 1.52c をずっと持ってた
955 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 11:47:25.06 ID:Gtnl1i7F0.net] C使用でも何も考えずにVC++無料版入れてるわ。 バージョンアップの度にプロジェクト作成項目に悩む・・・。
956 名前:デフォルトの名無しさん [2022/12/26(月) 11:49:12.88 ID:rbZigseYd.net] 関数のポインタの配列を返す関数の宣言を教えてくさい
957 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 12:21:30.32 ID:sWfTrmtka.net] 残念だなのび太 C言語は配列を返せないんだ
958 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 12:24:01.49 ID:XQluw9Ded.net] >>935 試食って書いてあるの見えない? そういう類いには意図的に制限かけてあるんだよ 有料の正規バージョンを買ってねって意味 PS3のlinux封じとは訳が違う 怒る人のいないやり方なので 脱獄は誰も手伝ってくれないよ
959 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 12:48:43.97 ID:gpJgKl24M.net] 森公一郎さん、亡くなっているんだよな
960 名前:デフォルトの名無しさん [2022/12/26(月) 12:49:38.27 ID:6bMfB0bxa.net] >>942 返す関数は定義出来るだろ 確保した領域の生存が関数内のみかそうじゃないかで結果は変わるが >>941 思ってるものを描いてみ?
961 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 12:54:26.08 ID:VH0Lg5Zw0.net] まあ関数イテレータ的には使えるのか int getNoTest1(int x, int y, int z){return x*100+y*10+z;} int getNoTest2(int x, int y, int z){return x*200-y*20-z;} int getNoTest3(int x, int y, int z){return x*1000-y*100+z;} typedef int(*FuncType)(int, int, int); FuncType *getFuncAddrArray(void){ static FuncType fa[3]; fa[0] = getNoTest1; fa[1] = getNoTest2; fa[2] = getNoTest3; return fa; } int main(int argc, char *argv[]){ FuncType *funcAddr = getFuncAddrArray(); for (int i = 0; i < 3; ++i){ printf("%d\n", funcAddr[i](rand(), rand(), rand())); } return 0; }
962 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 15:36:06.25 ID:tmqxSKGS0.net] >>945 できねーよ 配列が第一級オブジェクトじゃない珍しい言語
963 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 16:49:38.00 ID:URVWGre6d.net] void(*func(void)[2])(void); できるとしたら、こうなるが
964 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 17:05:11.56 ID:0DsOmzGV0.net] 固定長配列を戻すなら struct を経由したくなるわ
965 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 17:05:36.17 ID:F5Lcb5Ke0.net] const char *f() {return "関数のポインタの配列";}
966 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 17:32:34.93 ID:eX0Ff8H70.net] 一休さんは、やめよう
967 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 17:34:43.38 ID:0DsOmzGV0.net] https://ideone.com/DiokCM strust ひっぺがして 戻り値が配列となる宣言だとおこられた FUNC_PTR_T getFuncs(void)[3];
968 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 18:26:36.88 ID:+xP92Jxa0.net] >>949 てか struct で包めば配列も返せるよね
969 名前:デフォルトの名無しさん mailto:sage [2022/12/26(月) 18:41:08.47 ID:sEpxtj4KM.net] 関数へのポインタの配列の構造体?
970 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 00:19:48.06 ID:8jh3A4jF0.net] >>944 近藤嘉雪 パーサ担当 森 公一郎 コードジェネレーター担当 近藤さんの本は20年くらい前本屋でよく見かけたな
971 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 01:28:35.56 ID:1kPfWYrSM.net] 配列も値型だったら一貫性が有っただろうな でも、配列を丸ごとコピーするなんて普通しないから、利便性を優先したんだろう それによって、ポインタと配列は似てるけど違いもあるみたいな、初学者泣かせな仕様が生まれてしまった
972 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 03:19:13.84 ID:lusjSahA0.net] ベースアドレスが配列の初めの要素を指すCスタイルの配列には一貫性があるだろ、だから0-based indexを採用する蓋然性があるわけで 何らかのbookkeeping、サイズ、ストライドやランク情報等のメタデータをスカラで一緒に渡す明示的なもの、あるいはstructで包む、メンバに.flagを設けるのはdope arrayの再発明 一方、dope arrayをネイティブ採用する為には ベースアドレス+0は配列要素ではなく、メタデータを指さねばならない だから初めの配列要素はベースアドレス+1(いわゆる1-based index)であるべき、という蓋然性がある 最も邪悪な配列の設計はメタデータを持つにも関わらずC慣習にすり寄って来て0ベース採用のやつな、設計に何の一貫性も無い アドレス計算はCスタイルの方がスッキリして好き、個人的にはだけど
973 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 03:42:16.62 ID:lusjSahA0.net] array[0]がarrayの始めの要素を指す、という伝統を尊重しつつ整合的にメタデータを持たせる拡張をしたいなら、arrptr-1に持たせるって手もあるね
974 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 05:21:18.30 ID:nX/ozHbV0.net] 文字列はchar型の配列だし 文字列のコピーなんか、あらゆる言語で基本中の基本だ
975 名前:デフォルトの名無しさん (ワッチョイ 9d10-dxp0) mailto:sage [2022/12/27(火) 08:19:53.31 ID:yfz0bOFn0.net] 処理コスト軽減の為に配列自体ではなく配列の先頭ポインタでやり取りしましょう。
976 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 11:14:55.49 ID:FjfQte1M0.net] 配列が固定長なのは仕方がないと言うか、当然かなと思うが 文字列は、編集がもっと自在に出来た方がありがたかったな
977 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 11:19:00.19 ID:8jh3A4jF0.net] >>960 同じことだぞ 式の中では配列はポインタそのものだ
978 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 11:32:56.50 ID:pT1qhH4d0.net] sizeof演算子「いや俺区別してるし」
979 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 11:34:00.98 ID:2fUOYjFgd.net] &演算子: いい加減なこと言ってもらっちゃ困るな
980 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 11:36:45.19 ID:2fUOYjFgd.net] 昔、こんなバカいたよ printf("%d", sizeof "abc"); 見ろ、文字列はポインタだ(キリッ
981 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 11:49:59.77 ID:8jh3A4jF0.net] 式の中の配列と書いたのが読めないバカが多すぎる
982 名前:デフォルトの名無しさん (アウアウウー Sa2f-aXTt) mailto:sage [2022/12/27(火) 12:20:51.00 ID:3AXDXHupa.net] 式がどういう意味かわかった上で他人をバカ扱いしてる?
983 名前:デフォルトの名無しさん (ワッチョイ 9769-jXNG) mailto:sage [2022/12/27(火) 12:21:02.33 ID:o7XCQITF0.net] 965なんかもあくまで式だよ int a[100]; int *b; (sizeof a) + (sizeof b); ←これも式であり、式の中に配列もポインタも居る a++ 非合法 b++ 合法 これも式
984 名前:デフォルトの名無しさん (US 0Hd7-ij7E) mailto:sage [2022/12/27(火) 17:43:59.96 ID:x3eVxeWPH.net] あの~ 誰か excel マクロで動く cc を作ってくれませんか? うちの会社、cygwin 禁止なんです、cygwin インストーラですら実行できないんです、すごく弱っています コンパイラが手元にないと私は無力……
985 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 18:03:44.42 ID:/tVTIbQ7a.net] VBA使えよ 安心しろお前は自分で思ってるほどCが得意じゃないから
986 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 18:19:46.78 ID:uvaA1liZd.net] visual studioの稟議を上げられない社畜?
987 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 18:22:29.22 ID:FjfQte1M0.net] C#のコンパイラなら、何もせずともWinのどっかにはいっているような気がした
988 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 19:41:50.61 ID:tBCD9SD30.net] >>971 仕事に関係のない VS なんて認可されませんよ、べつにソフトウェアの人じゃないんだから >>970 コンパイラが手元にないと、どうもやる気がでなくって…
989 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 19:42:45.86 ID:tBCD9SD30.net] >>972 cs.exe なんて大っ嫌い
990 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 20:26:44.18 ID:pT1qhH4d0.net] >仕事に関係のない VS なんて認可されませんよ >誰か excel マクロで動く cc を作ってくれませんか? 仮に誰か作ってもインストール認可されないんじゃないの? そういう環境だと読み取ったけど
991 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 20:30:03.68 ID:NnGcg72Bd.net] >>973 勤務中にくだらねえことやってんじゃねえって上司に怒られるの?
992 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 20:31:33.55 ID:usWDFVvc0.net] まあ仕事に関係ないって自分で言っちゃってるからなぁ
993 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 20:39:00.00 ID:FjfQte1M0.net] じゃあ、無敵のシェルスクリプトだだだ・・・
994 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 22:26:37.16 ID:tBCD9SD30.net] >>975 >仮に誰か作ってもインストール認可されないんじゃないの? >そういう環境だと読み取ったけど マクロはインストールするものじゃないから自由に使えるんですよ、インストール権限の必要なソフトはインストールできないってだけでして >>976 そうはいっても、単一ディレクトリの全ファイルに対して、ファイル名の冒頭に連番を振るプログラムを 3 時間ほどでチョロっと書いて、業務に生かしているんですけどね いちいち手作業でファイル名を変えるとかやってらんないでしょ?自分のために自分で書く分くらいは許容してほしいよね
995 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 22:29:39.01 ID:tBCD9SD30.net] あと、巨大な csv ファイルを結合するプログラムも便利に使っていたんですけどね、大概の機械はデータを csv で吐いてくれますますからねえ
996 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 22:31:04.10 ID:usWDFVvc0.net] >>979 屁理屈なら上司に言って怒られてこい なぜまともなソフトがインストール不可なのにお前の作ったソフトなら大丈夫と思うんだ
997 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 22:35:10.73 ID:usWDFVvc0.net] ファイル名の頭に連番打つとかPowerShellでもバッチでもVBAでもできるしそもそも打つ必要があるかどうかさえ怪しい お前のやってることが本当にみんなにとっていいことなら業務効率化のためにコンパイラの申請を通すのは何も難しくない 拒否られてるところで気づけよマジで 職場に不和の種をまくんじゃねえ
998 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 22:35:56.95 ID:FjfQte1M0.net] こう言うわがままは却下されて当然ではないか
999 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 22:43:18.14 ID:tBCD9SD30.net] >>976 操作記録をいちいち記録されて、裏でこっそり査定に響く仕組みですよ、たぶん ああ、こんなところでここまで書いちまったらもう私の給料は来年は半額になっちまいますねえ、当の昔に諦めてるけど
1000 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 22:58:37.89 ID:VvvSD8wK0.net] >>982 power-shell はたぶん入っていないと思いますよ、あったら使うに決まってますもん VBA はいちいち excel を起動してマクロを走らせて、ああ、もうめんどくさくって死にそう 実行ファイルワンクリックで、ピシッと全ファイルを改名したいだけですよ、そうすればさくさく錯綜するメールスレッドを管理できますからね バッチファイルで改名?できるというのなら見せてくださいな? >>981 業務効率改善のため自分のために自分で作り自分が使うだけのソフトと、多数の人が使う商用の売り物のソフトとを一緒にしないでくれる?
1001 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 23:03:13.50 ID:VvvSD8wK0.net] >>983 そりゃ、業務そっちのけで得体の知れないプログラムを書いてばかり(星新一の短編にそんなのがありましたね…)だったら叱られますけど、ぱっぱと3時間で書いて後はノーメンテ、それで半年実用になっているんだから遊んでいるわけじゃないんですけど
1002 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 23:06:57.48 ID:VvvSD8wK0.net] >>982 >業務効率化のためにコンパイラの申請を通すのは何も難しくない 難しいんですよ… あらかじめ効用をきちんと提示しなければならないなんてめんどくさくってやってらんない、 作りたいソフトが具体的に念頭にあるわけではなく、将来的に使いたい可能性が発生する可能性があります、で稟議を通るわけがないでしょう?
1003 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 23:25:57.12 ID:FjfQte1M0.net] マ板で相談してみたら? ここは大分場違いになってきてる
1004 名前:デフォルトの名無しさん mailto:sage [2022/12/27(火) 23:34:33.01 ID:nX/ozHbV0.net] ブログにでも書けばいいのでは
1005 名前:デフォルトの名無しさん mailto:sage [2022/12/28(水) 00:05:29.63 ID:JeA8YDJe0.net] >>988 (職業)マじゃないただの一般人なので、マ板はたぶん板違い >>989 ブログみたいな上等な場所に書くことではなく、便所のチラ裏で愚痴るに相応しい話題だと私は思いますけどね まあ、もうやめます
1006 名前:デフォルトの名無しさん mailto:sage [2022/12/28(水) 01:06:31.58 ID:PyoNDBFu0.net] 別に職業プログラマでなくても良いんだよ プログラム(ロジック)についての悩みならここで良いが プルグラムを書こうとする人の悩みは、マ板の方が相応しい
1007 名前:デフォルトの名無しさん (テテンテンテン MM97-t1KK) mailto:sage [2022/12/28(水) 03:37:42.61 ID:+f6n+5TtM.net] > バッチファイルで改名? これが出来なきゃ何のためにバッチファイルが存在してんだよw バッチやシェルスクリプトは、ファイルのコピーやリネームとか、ファイル関連の処理が簡単に出来る事が最大のメリットだ 兎に角グクれば山ほど出てくる
1008 名前:デフォルトの名無しさん mailto:sage [2022/12/28(水) 05:55:41.03 ID:VGHawTJO0.net] C
1009 名前:デフォルトの名無しさん mailto:sage [2022/12/28(水) 05:56:03.28 ID:VGHawTJO0.net] 言
1010 名前:デフォルトの名無しさん mailto:sage [2022/12/28(水) 05:56:54.31 ID:VGHawTJO0.net] 語
1011 名前:デフォルトの名無しさん [2022/12/28(水) 05:57:50.13 ID:DPVYYyHtM.net] C
1012 名前:デフォルトの名無しさん [2022/12/28(水) 05:58:53.46 ID:DPVYYyHtM.net] +
1013 名前:デフォルトの名無しさん [2022/12/28(水) 05:59:41.77 ID:DPVYYyHtM.net] +
1014 名前:デフォルトの名無しさん [2022/12/28(水) 06:00:17.27 ID:DPVYYyHtM.net] 言
1015 名前:デフォルトの名無しさん [2022/12/28(水) 06:00:51.24 ID:DPVYYyHtM.net] 葉
1016 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 145日 6時間 28分 24秒
1017 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています