>>916 マジッスか
どっかにUPしてもらえませんか
UPもなにも…フリーだし…
せこせこするな。UPしてやれよw
>>918 たった一つの関数のソース見るためだけに
わざわざOS落としてきたりはキツイっす
>>920 で、お次は
「たった一つの関数を理解するために
何千行ものコードを読むのはキツイっす」
か?
VCとかBCBとかにはちゃんと付いてきているはずなんだがな。
927 :
デフォルトの名無しさん:04/09/13 22:15:13
文字列⇒整数変換をしたいのですが、
標準関数の atoi() を使うと 0 がエラー扱いになってしまいます。
この制限を解決するスマートな方法はないでしょうか?
strtol使うとか。
930 :
デフォルトの名無しさん:04/09/14 00:21:05
>>928 if(sscanf(mojiretsu, "%d", &seisuu) != 1) goto hell;
sscanfよりstrtolのほうがいいよな。
932 :
デフォルトの名無しさん:04/09/14 00:24:14
評価基準を示さずに結論だけ言うDQNは放置
930にはなぜsscanfを使うか理由が書いてないな。
>>929 strtol() もエラー値が 0 なのでだめそうです。
>>930 sscanf() なら 0 が入力されてもエラー値と混同しないですね。
ありがとうございます。
935 :
デフォルトの名無しさん:04/09/14 00:37:25
どうやら質問者の方が頭よさそうだなw
>>934 もう少し身長にマニュアルを読んだほうがいいよ。
935の頭は質問者と同レベル。
>>934 エラーかどうかを戻り値で判断すると思い込むのは危険だな。
940 :
デフォルトの名無しさん:04/09/14 00:46:55
標準出力とファイル出力を選択できる機能はどうやれば出来ますか?
>標準関数の atoi() を使うと 0 がエラー扱い
もうちょっとちゃんと言え。
>strtol() もエラー値が 0 なのでだめそうです。
もうちょっとちゃんと読め。
>>939 オレも初めて数ヶ月は戻り値が全てと思ってたよ・・・
944 :
デフォルトの名無しさん:04/09/14 00:49:07
>>940 fprintfやfputsなどの引数を変えればいいのでは?
dup()dup2()
pipe()
947 :
デフォルトの名無しさん:04/09/14 00:51:20
>>943 そこで悩んでます。if文とかでも出来そうかなとは思うんですがイマイチわからなくて
write(1, ...);
write(2, ...);
でいいんじゃねw
949 :
デフォルトの名無しさん:04/09/14 00:52:37
>>947 コマンドライン引数でファイル名が指定されていればファイルに、指定されていなければ標準出力に書き出すとか。
argc,argv(main関数の引数)の使い方はわかる?
950 :
デフォルトの名無しさん:04/09/14 00:54:35
if(/*標準出力なら*/)
fp = stdout;
else
fp = fopen("hoge.txt", "w");
fprintf(fp, "Hello");
952 :
デフォルトの名無しさん:04/09/14 00:58:48
>>950 #include <stdio.h>
int main(int argc,char *argv[])
{
FILE *fp;
if(argc<=1)
fp=stdout;
else
fp=fopen(argv[1],"w");
if(fp==NULL)
return 1;
fprintf(fp,"はろーわーるど\n");
if(argc>1)
fclose(fp);
return 0;
}
コンパイルしてできた実行ファイルがtestonなら、
testonで標準出力に、teston file.txtならfile.txtに書き出す。
953 :
デフォルトの名無しさん:04/09/14 00:59:33
>>951 あ、出来そうですね。ありがとうございます
954 :
デフォルトの名無しさん:04/09/14 01:00:54
>>941 よく読んでみました。
strtol() の返り値が 0 の場合、第2引数が数値かどうかを判断すればいいわけですね。
long value = strtol(numStr, &endptr, 10);
if (value == 0 && (*endptr != '\0')) goto ERROR;
こんな感じでしょうか・・・。
956 :
デフォルトの名無しさん:04/09/14 01:04:36
>>955 数字列のあとの空白("-387 "←こういうの)を許さないならそれでいい。
957 :
956:04/09/14 01:05:27
例がまずかったな
"0 "
>>957 アドバイスありがとうございます。
stdinから入力されたCSV形式の数値解析をしたかったんですが、
sscanf(), strtol() どちらでも実現できそうですので、
もう少し考えてみてよりシンプルな処理になる方を使ってみます。
>>958 まだ、いまいち分かってないっぽいな。
どうでもいいけど。
現在あるデータをC言語を使って処理するプログラムを作り、
それがほぼ終わりました。この課題を通してやっと初級の入り口に
立てて、プログラミングの面白さが分かった気がします。
本業ではないですが、プログラミングを続けてレベルアップしたいと
思っています。しかし、次のデータとか、特に課題が見つかりません。
何か面白い課題はないのでしょうか。
恐らくこのままではプログラマーでもない私は今やっているような
面白い課題に自然に巡り合うことは今後もうないと思います。
面白いデータや課題があれば、教えてください。
よろしくお願いします。
オレが学生のころは、ゲーム作ったり、テキストエディタを作ったり、
お絵かきツールを作ったり、言語のインタプリタを作ったり、いろいろしてた。
作るといっても、書籍のソースを打ち込んで、改造したりってのがほとんどだったけど。
>>961 どうもありがとうございます。
ツールという課題がありますね(思いつきもしませんでした・・
自分が使いたいと思うツールを作って使うのは面白そう。
>>962 このスレでも宿題スレでもいいからテンプレリンク含め目を通せばいいよ
964 :
ビル・ジョブス:04/09/14 04:41:03
>962
次はWin32APIを勉強するとかデバイス制御を勉強するのがお奨めです。
コンピュータ言語なんて単なる表現ツールですよ。
(C言語は他の言語に比べてかなり洗練されてるから止められないけど)
>>939 つーか「エラー値」と聞いて何かを早合点している時点でアウツ