C言語なら俺に聞け! Part 112
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2005/08/08(月) 01:32:01質問する前には最低限検索を。
GUIなどの標準Cではできない事の質問は使用している開発環境のスレへGo! (←ここ注目)
ソース丸投げ、宿題、書籍 は専門の別スレがあるのでそこへさようなら。
エラー(警告含む)が起きたのならばエラーメッセージを書きましょう。
C FAQ 日本語訳
http://www.kouno.jp/home/c_faq/
Cプログラマ必読 ・プログラミング言語C(通称 K&R)
http://www.amazon.co.jp/exec/obidos/ASIN/4320026926/
C言語なら俺に聞け! Part 111
http://pc8.2ch.net/test/read.cgi/tech/1121657911/
他の過去ログはここに
http://nssearch.hp.infoseek.co.jp/clang/
0799デフォルトの名無しさん
2005/08/25(木) 15:45:15そういうページがあるのを初めて知ったw
過去ログにまとまってるリンクも便利だね。
>>793ではないが、ありがトン
0800デフォルトの名無しさん
2005/08/25(木) 16:03:04>>795読んでますか?
0801デフォルトの名無しさん
2005/08/25(木) 17:13:51>>795+推薦図書スレ行ってこい
そこのお勧め本使ってそれなりに勉強してる最中の俺ガイル
0802デフォルトの名無しさん
2005/08/25(木) 20:13:140803793
2005/08/25(木) 21:19:12柴田望洋氏の本を図書館で借りてみました
過去ログも見てみます
0804デフォルトの名無しさん
2005/08/25(木) 22:05:180805デフォルトの名無しさん
2005/08/25(木) 23:14:370806デフォルトの名無しさん
2005/08/25(木) 23:15:270807デフォルトの名無しさん
2005/08/25(木) 23:19:03漢字とかひらがなとか入力できないんでどうすればできるのかなぁと
0808デフォルトの名無しさん
2005/08/25(木) 23:28:170809デフォルトの名無しさん
2005/08/25(木) 23:50:270810デフォルトの名無しさん
2005/08/25(木) 23:53:290811デフォルトの名無しさん
2005/08/25(木) 23:54:28どいつもこいつも小出しにしやがって
0812デフォルトの名無しさん
2005/08/25(木) 23:54:520813デフォルトの名無しさん
2005/08/26(金) 00:33:18エラーE2209 インクルードファイルをオープンできない、といわれました
borland c++ 5.5 ってコンパイラーを使ってます。
誰か教えていただけませんか?
0814デフォルトの名無しさん
2005/08/26(金) 00:34:360815813
2005/08/26(金) 00:43:13cの本についてるCDと同じ名前だったのでc++の本についていた付録CDをつかったんですけど、
それは関係ありませんよね?
コンパイルするとき bcc32 ***.c ってやってるんですけど
cのときとc++のときってコンパイルの仕方が違ったりするのですか?
超初心者ですいません、あと環境設定ってのはなんですか?
0816デフォルトの名無しさん
2005/08/26(金) 00:44:260817813
2005/08/26(金) 00:45:410818デフォルトの名無しさん
2005/08/26(金) 00:46:560819813
2005/08/26(金) 00:50:33cをコンパイルするときでもbcc32でいいんですか?
c++のコンパイラでもcはコンパイルできるって書いてあったのでやってたんですけど
0820デフォルトの名無しさん
2005/08/26(金) 00:51:430821813
2005/08/26(金) 00:52:360822デフォルトの名無しさん
2005/08/26(金) 00:52:45自分では調べない
自分で解決しようとせずになんでも人に聞く
こんなやつには、プログラミングはできない
0823813
2005/08/26(金) 00:58:00自分でなんとかします
0824デフォルトの名無しさん
2005/08/26(金) 01:27:300825デフォルトの名無しさん
2005/08/26(金) 04:11:02どこのスレに書き込んでいいのか分からなかったので
とりあえずここに書かせてください。
試験なんかに使うマークリーダー用のデータ読み取りプログラムというのは
どういった言語で構築するのでしょうか?
ちなみに、仕様はCSVファイルのデータをマークリーダー(読み取り機)で
読み込んで正否などを打ち出すらしいのですが...
0826デフォルトの名無しさん
2005/08/26(金) 04:16:31とりあえずはすれたてるまでもない質問スレでやれ
CSVにはどんなデータが入っていてリーダーはどの機種で
OSや予算や使える言語も最低限書くこと
0827デフォルトの名無しさん
2005/08/26(金) 04:28:55でも、どんな言語で作るのかを聞きたいのに
使える言語も最低限書くことと言うのは、どういう意味ですか?
因みに
OS Win
予算 数100万
CSVの中には 試験に必要な「個人情報」と答案用フォームに書き込まれた「解答番号」です。
リーダーの機種名は 不明です。
0828デフォルトの名無しさん
2005/08/26(金) 04:32:47頼むからここを荒らすな。
スレ違いつーか、鼬害なんだから。
0829デフォルトの名無しさん
2005/08/26(金) 04:41:39失礼しました。
0830デフォルトの名無しさん
2005/08/26(金) 04:48:59例えば,
c = a[i][j + 0] + b[i][j + 0];
c = a[i][j + 1] + b[i][j + 1];
c = a[i][j + 2] + b[i][j + 2];
c = a[i][j + 3] + b[i][j + 3];
見たいに書く代わりに,
LOOP_4(c = ....);
みたいにかける LOOP_4 のような物が欲しいです.
こういうのって割と需要ありそうなんですが,検索してもなかなか見つかりま
せん.識者の方,アドバイスお願いします.
0831デフォルトの名無しさん
2005/08/26(金) 04:52:30ループじゃいかんのけ?
0832デフォルトの名無しさん
2005/08/26(金) 05:19:120833デフォルトの名無しさん
2005/08/26(金) 05:40:28#include<boost/preprocessor.hpp>
#define GEN(z,k,_) c = a[i][j + k] + b[i][j + k];
BOOST_PP_REPEAT(4,GEN,_)
こんな感じ
0834デフォルトの名無しさん
2005/08/26(金) 05:47:38普通にfor文のループで書くしかない
わけのわからんマクロ作ったらタコ殴りの刑
0835デフォルトの名無しさん
2005/08/26(金) 05:55:13>>833
ありがとうございます.できれば C でやりたいんですが,やっぱり無理なんでしょうか.
0836デフォルトの名無しさん
2005/08/26(金) 05:56:350837デフォルトの名無しさん
2005/08/26(金) 05:57:02高速化の随分と最後の方にやるモノではあるのだが、
使わないこともない技術だ。
0838833
2005/08/26(金) 05:57:52一応手元のgcc,vc,dmcでは問題無かったです。
0839デフォルトの名無しさん
2005/08/26(金) 06:03:13おお.
Boost == C++ ってイメージがあったので試さずに書いてしまいました.
ありがとうございました.
0840デフォルトの名無しさん
2005/08/26(金) 08:18:550841デフォルトの名無しさん
2005/08/26(金) 11:51:19一番最初にくる文字を表示するプログラム*/
#include <stdio.h>
int main(void)
{
int i;
char ch1, ch2;
printf("英字を10個入力してください\n");
ch1 = getchar();
for(i = 0; i < 10; i++){
printf("%d", i); /*動作確認のため*/
ch2 = getchar();
if(ch1 > ch2){ch1 = ch2;}
}
printf("%c", ch1);
return 0;
}
ループの中で1つ文字を読み込むときにi++が2回行われているようなんですが
どうしてでしょうか?
0842デフォルトの名無しさん
2005/08/26(金) 11:59:29改行コードでも入力されたんだろ。
詳しく知りたいなら初心者スレにでも行ってくれ。
0843デフォルトの名無しさん
NGNG英字10って言ってるけど、それだと11個入力しないといけないんじゃない。
0844デフォルトの名無しさん
2005/08/26(金) 12:23:41わかりました。そっちに行ってみます。
>>843
本当だ!気がつかなかった…ありがとう(^ω^)
0845デフォルトの名無しさん
2005/08/26(金) 12:25:28未だにCに拘っている方がいるのはなぜですか?
0846デフォルトの名無しさん
2005/08/26(金) 12:38:33・C++ コンパイラがない
・C++ だとバイナリがかさばって、サイズがヤバい
・最適化能力の上な C でないと速度が少し気になる
・使用可能者の数が多い
・新人教育の手間が省ける
・比較的多くの人が保守可能
・怠慢、理解力不足
・言語学習に時間を割くより娯楽に割く
・C++ が理解できなかった
0847デフォルトの名無しさん
2005/08/26(金) 12:38:530848デフォルトの名無しさん
2005/08/26(金) 12:40:07おそらくこんなところじゃないかと思う。
C++コンパイラがない。
今更新しい言語を学ぶ気にはならない。
Better Cとして使えることを知らない。あるいはBetter CでもCより実行速度が遅いと思い込んでいる。
0849847
2005/08/26(金) 12:41:26『拘っている』って字が読めてなかった
0850デフォルトの名無しさん
2005/08/26(金) 12:59:41・printfの方がいい
0851デフォルトの名無しさん
2005/08/26(金) 13:12:55それはC++を使わない積極的な理由にならない。
つーか、>850自信が>846や>848の最後の行に該当するんジャマイカ。
0852デフォルトの名無しさん
2005/08/26(金) 13:14:560854デフォルトの名無しさん
2005/08/26(金) 13:29:210855デフォルトの名無しさん
2005/08/26(金) 13:46:360856デフォルトの名無しさん
2005/08/26(金) 13:55:17stringに慣れてしまうと一々文字列編集でstr系の処理で配列の上限値を意識するのが面倒になる
0857デフォルトの名無しさん
2005/08/26(金) 14:01:57にゅうが使えない という環境も
いや、使えないことは無いんだけど自分でにゅう作るのもしんどいし
にゅう無いとC++使っててもなんか損した気分になるからなぁ
0858デフォルトの名無しさん
2005/08/26(金) 14:22:340859デフォルトの名無しさん
2005/08/26(金) 14:29:26うー
0860デフォルトの名無しさん
2005/08/26(金) 15:00:450861デフォルトの名無しさん
2005/08/26(金) 15:10:51にゅうが使えない/使いにくい/使いたくない環境もあるということです。
Cやアセンブラなら東京ドーム4杯分に感じる512kbのメモリ空間も
C++だと途端に広島市民球場に見えるということです。
0862デフォルトの名無しさん
2005/08/26(金) 15:14:50C++を完全に手放す理由にはならんだろ。もしかして
int main(){ return 0; }
のプログラムでも使用メモリって両者でけっこう違ったりするもんなのか?
っていうか広島市民球場を馬鹿にするな
0863デフォルトの名無しさん
2005/08/26(金) 15:18:15そうです。でも、BetterCとして使うのは、なんとなくもったいないというか
そういう感じがするだけです。
広島市民球場でも、まあ、野球やろうと思えば 出来ないこともないですし
0864デフォルトの名無しさん
2005/08/26(金) 15:22:09立てるだの立てないだのぐだぐだしてる時期にあるだけで、
いずれは時代も流れて行くものなのでつ Cも廃れる日が来るのでしょうね
0865デフォルトの名無しさん
2005/08/26(金) 15:32:58もったいないってなんだよ。コンパイラの値段が高い、という話ならわかる。
むしろ better C のほうがメモリ節約になる例↓
int main()
{
if(getchar()=='A')return 0;
char str[256]; //↑でAが入力されればこの配列が確保されることはない
gets(str);
return 0;
}
0866デフォルトの名無しさん
2005/08/26(金) 15:33:22そうでなければCっぽいコードとC++っぽいコードが混在してわけわからんコードになる。
規約作ってまでbetterCに拘ることもないかなと。
0867デフォルトの名無しさん
2005/08/26(金) 15:40:54charのコンストラクタが走る事はないと思うが、スタックを消費しない事は
規約で決まってたんだっけ?
0868デフォルトの名無しさん
2005/08/26(金) 15:42:26ワロタ
0869デフォルトの名無しさん
2005/08/26(金) 15:49:07別に「使っちゃいけない」機能があるわけじゃないだろ。
「使うことは推奨しない」だけで。別にそれで致命的なエラーが発生するわけでもあるまいし。
そんなガチガチに縛る必要ないから、規約だって簡易的なもので済むんじゃねーの。
>>867
あ、そこは見落としてた。どうなんだろ。
0870デフォルトの名無しさん
NGNG>あ、そこは見落としてた。どうなんだろ。
VC++だと、関数の途中で変数を宣言しても、スタックの節約にはならないね。
0871デフォルトの名無しさん
2005/08/26(金) 16:31:18うん。それなら広島市民球場よりは広く便利に使えそうだ。
ベターCとしてのC++仕様簡易規約みたいなのをでっちあげるのも
楽しそうだな。
スタックは、多少消費しても暗算で計算できる範囲内なら
まあ問題ないかな
0872デフォルトの名無しさん
2005/08/26(金) 16:56:59・static inline int min(int a, int b) {return a < b ? a : b;}
Cだとマクロを持ち出す必要がある。
で、マクロなら型違いを吸収できるわけだがそれならそれで、
C++にはテンプレートがある。
しかも、適切なオペレータが用意されていれば構造体でも同じ(テンプレート)関数で済む。
Cだとオペレータを用意することもできなければ同じマクロで実装することもできない。
0873749
2005/08/26(金) 17:03:07Cygwin上で bjam --without-test --without-python -sTOOLS=gcc install 中。
つーことで、わかんなかったらboostスレ逝ってみまつ。
0874デフォルトの名無しさん
2005/08/26(金) 17:10:03何もいきなりboostに走らんでもw
まぁ、がんがれ。
0875デフォルトの名無しさん
NGNG吉田弘一郎もC++は書式付出力が使いにくいから実用的な言語でないとかなんとか書いてたな。
おれもstream系は使いにくいと思うけど、なにもそれを持って全否定することはないじゃないかと
思った。
0876デフォルトの名無しさん
2005/08/26(金) 17:21:01strlenやstrcpyを使っているとします。
この時、あるプログラムで関数Bとstrlenやstrcpyを使っている場合、
リンク時にstrlenやstrcpyのコード(?)が重複してプログラムに置かれたりは
しないのでしょうか?
0877デフォルトの名無しさん
2005/08/26(金) 17:26:13しない。
0878デフォルトの名無しさん
2005/08/26(金) 17:35:350879デフォルトの名無しさん
2005/08/26(金) 20:55:54double a, b;
printf("例えばこんなところに(%d, %d)座標が入ってたり\n\t制御コードが入るとね\n", a, b);
0880デフォルトの名無しさん
2005/08/26(金) 21:58:42氏の言語に対する罵倒は、一種の愛情表現ですから。
0881デフォルトの名無しさん
2005/08/26(金) 22:23:21ってえことは、COBOLさいこー、FORTRANまんせーってことですな。
0882デフォルトの名無しさん
2005/08/26(金) 22:41:27ライブラリ作るとき、もうちょっとキレイなインターフェースを考えられなかったのかな。
世界で一番有名になってしまったこのprintfのおかげで、世の中、
発想がprintfしてるインターフェース設計が多すぎ
0883デフォルトの名無しさん
2005/08/26(金) 22:46:480884デフォルトの名無しさん
2005/08/26(金) 22:50:47Javaのprintfを見て、Javaを使うのを止めた
0885デフォルトの名無しさん
2005/08/26(金) 23:07:27型チェックが効かないってのは痛いけど、見た目は美しいと思うんだが。
0886デフォルトの名無しさん
2005/08/26(金) 23:10:580887デフォルトの名無しさん
2005/08/26(金) 23:20:06Javaやってないから何なのかと思って調べてみたら
printfが標準で無いのか
不便すぎるな
0888デフォルトの名無しさん
2005/08/26(金) 23:25:46標準にあるよ。
0889デフォルトの名無しさん
2005/08/26(金) 23:29:10J2SE5から実装されたのか、スマンカッタ
0890デフォルトの名無しさん
2005/08/26(金) 23:29:55くそみそ書いてた。
0891デフォルトの名無しさん
2005/08/26(金) 23:34:420892デフォルトの名無しさん
2005/08/26(金) 23:36:59まずは >>882 が考えている「美しいインターフェース」を持った
ライブラリとはどんなものかを伺おうじゃないか・・・
0893デフォルトの名無しさん
2005/08/26(金) 23:42:260894デフォルトの名無しさん
2005/08/26(金) 23:44:25便利さならphpとかのprintがいいと思うけど
0895デフォルトの名無しさん
2005/08/26(金) 23:44:33puts "rubyは気絶するほど美しい(#{x},#{y})"
0896デフォルトの名無しさん
2005/08/26(金) 23:47:54printf の偉大さが身にしみてくるんだな、これが。
0897デフォルトの名無しさん
2005/08/26(金) 23:48:130898デフォルトの名無しさん
2005/08/26(金) 23:48:59と言いたかったがここはCスレ(´・ω・`)ショボーン
■ このスレッドは過去ログ倉庫に格納されています