[表示 : 全て 最新50 1-99 101- 2chのread.cgiへ]
Update time : 02/07 21:28 / Filesize : 46 KB / Number-of Response : 199
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C言語なら俺に聞け(入門編)Part 96



1 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 03:01:40.24 ]
C言語の*入門者*向け解説スレッドです。

★前スレ
C言語なら俺に聞け(入門編)Part 95
toro.2ch.net/test/read.cgi/tech/1326459906/
★過去スレ
makimo.to:8000/cgi-bin/search/search.cgi?q=%82b%8C%BE%8C%EA%82%C8%82%E7%89%B4%82%C9%95%B7%82%AF&andor=AND&sf=0&H=&view=table&D=tech&shw=5000
★教えて欲しいのではなく宿題を丸投げしたいだけなら
  ↓宿題スレ↓へ行ってください。
C/C++の宿題片付けます 156代目
toro.2ch.net/test/read.cgi/tech/1328276597/
★C++言語については避けてください。C++対応明記スレへどうぞ
★分からない事をなるべく詳しく書いて下さい。
★ソースコードを晒すと答えやすくなるかもしれません。
  # 抜粋/整形厳禁、コンパイラに渡したソースをそのまま貼ること
  # サイズが大きい場合は宿題スレのアップローダ等を利用してください
★開発環境や動作環境も晒すと答えが早いかもしれません。
★質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。

長くなりそうなコードはcodepadに貼り付けてもいいでしょう
codepad.org/

4 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 11:54:37.66 ]
>>2
codepad.org/J3xlSVyO

5 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 13:12:23.35 ]
>>4
素晴らしい回答をありがとうございます!


あの、値渡しが上手くいかないんですけど、
どうすればいいでしょうか?

6 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 14:13:43.38 ]
>>5
値渡し云々よりもまず、
add = fibo(fibo(&a,&b),fibo(&a,&b));
この呼び出しの仕方だけど、関数呼び出しの引数を渡す所で、
同じ変数を更新する関数を呼ぶのは、呼び出しの順番が保証されないのでまずい
int z;
void f(int a,b,c) { }
void a(void) { z = 1; } void b(void) { z = 2; } void c(void) { z = 3; }
f(a(),b(),c());
この例ではa b cでそれぞれzを更新しようとしても、
どの順番に呼ばれるのかは言語の仕様に規定がないので、
zの結果は処理系依存になる。

で、値渡しができない件については、関数の結果の値は右辺値だから、
その値に対してのアドレスは得られない。
一度、結果を別の変数に格納して、その変数のアドレスを渡せば良い。
int tmp = fibo()
fibo(&tmp)

7 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 14:16:33.88 ]
つーかfiboの型はvoidじゃないか。
voidじゃなくてint *にして適当にreturnで返せば意図通りになるよ。


8 名前:デフォルトの名無しさん [2012/02/04(土) 15:17:27.77 ]
なるよね

9 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 15:29:24.92 ]
呼び出しの順番がどうとか関係ないよね

10 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 15:53:12.09 ]
ないよね。

11 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 15:58:21.51 ]
Cには値渡ししかないけどな。

12 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 18:36:36.21 ]
関数引数の評価順序は規定されてないんだから
あんな書き方するもんじゃないよって事だよ





13 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 19:02:44.18 ]
そもそも元の意味がわからんが、どういう順でよばれても同じ結果になる感じじゃないのか。
だからそもそも論点が違う。

14 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 21:06:04.79 ]
>>4
上手いな。

15 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 21:14:03.83 ]
まぁ最近はあんまりしてないけど、はじめてCしたのはもう30年以上前だからな。

16 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 22:22:05.74 ]
><

17 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 23:26:06.87 ]
あれは30年前
止めるあなた駅に残し

18 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 23:40:18.97 ]
>>9-10, >>13
どんな順序でも結果が同じになればいいというわけじゃない。

それがいいなら、a = (i++) * (i++); もいいことになる。

C-FAQ: 3.2, 3.8

19 名前:デフォルトの名無しさん mailto:sage [2012/02/04(土) 23:56:16.60 ]
assertの内部実装に関して質問なのですが、
プログラム中でassertに引っかかって停止した場合、
OSに対して、何かしらの値を戻したりしているのでしょうか?

20 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 00:20:23.07 ]
>>18
未定義と不定は違うのだよ。

21 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 00:45:36.11 ]
>>20
それがどうかしたのか?

22 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 00:47:51.63 ]
>>19
それは実装次第じゃないかな。



23 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 01:21:18.15 ]
mainのなかでファイルからデータを読み込んで、構造体の配列で宣言したものを
ユーザー定義関数?でつかうにはどうしたらいいんですか?

24 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 01:35:49.01 ]
>>18
論点が違うよ。
>>2のケースは
codepad.org/JEMlZ7Sb
こういうことだから評価順は関係ないよね
ってな話。
分かる?

25 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 01:36:39.45 ]
>>23
mainのなかでファイルからデータを読み込んで、構造体の配列で宣言したものを
ユーザー定義関数?でつかえばいい。

26 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 01:38:01.47 ]
「ファイルからデータを読み込んだデータ」をつかう?
「構造体の配列で宣言したもの」をつかう?

27 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 01:45:05.45 ]
まずデータをファイルに書き込んでおいたものを読み込んで
それを構造体の配列で保持します。
mainの中でよみこんだのをユーザー定義関数で使えますか?

28 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 01:46:09.07 ]
何を言ってるのかよくわからないが、使えない理由はない。

29 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 01:47:21.68 ]
説明下手ですいません;

30 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 02:19:34.00 ]
スレチかもしれないが・・・
(1)1から1000までの間に、3と7の倍数の値がいくつ含まれているのか求めるプログラムを書け。

(2)キーボードから西暦年を入力し、その年がサッカーワールドカップ開催年かどうかを判定するプログラムを作成せよ。

この2つのプログラムを作成してくれませんか?自分でやってみたのですが、イマイチうまくいかなくて・・・

31 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 02:33:10.21 ]
スレ違い。

32 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 02:33:36.06 ]
スレチか〜残念



33 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 03:01:52.49 ]
>>14
まぁ、メジャーなサンプルだから、ここから学ぶことは多いよね。

>>18
順番関係ないよ。
その2行目は曲解もはなはだしいけど

34 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 03:20:08.84 ]
>>27
ユーザ定義関数に引数で渡せば使える

35 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 10:07:07.51 ]
>>24
結果が正しいからOKって?
いや、まあ君がそれでいいなら別に言うことはないけど。

36 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 15:01:40.90 ]
>>35
どこが問題なの?

37 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 15:37:15.24 ]
head.h、one.cpp、two.cppのファイルの構成で
head.hの中にaaa()、bbb()という関数があったとして
one.cpp、two.cppともに、head.hをインクルードしたとき
関数aaaとbbbはちゃんと1つずつメモリに読み込まれるんでしょうか?
exe実行すると、2個ずつメモリに展開されるようになるんですか?

38 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 15:45:04.03 ]
そもそもhead.hに関数の定義をしてはいけない。
してしまったとしたら、その関数が外部リンケージならエラーになるはず。
ファイルリンケージなら、実体は複数できる可能性が高い。

39 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 15:52:25.44 ]
ありがとうございました

40 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 16:17:02.29 ]
>>37
>>38の補足になるけど

>head.hの中にaaa()、bbb()という関数があったとして
これが宣言なのか定義なのかが問題。
通常は宣言だと思うので、それならば問題ない。
定義だとすると>>38の問題がでる。

これがinline関数だとしたら処理がインラインに展開されることになり、
メモリは余計に食うことになる。

41 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 16:25:37.68 ]
よっぽど短い関数の場合だとインライン展開した方が小さい場合もあるけどな。

42 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 17:18:20.48 ]
FILE *fp;
fp = fopen("data.txt","r");
for(i=0; i<10; i++)
{
if((fscanf(fp,"%[^,],%d",data[i].name, data[i].score)) != EOF)
{
number++;
}
else
{
break;
}

ファイルの読み込みってこれであってますか?
うまくうごかないんですけど



43 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 18:25:51.58 ]
>>42
どう、うまく動かないかわからんのだが。
ついでにdata構造体の宣言が見えないとわからん。

気になるのはdata[i].scoreはポインタを渡しているかってことかな。

44 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 19:02:19.27 ]
struct file_data{
char name[100];
int score;
};

struct file_data data[10];

構造体の宣言はこんな感じです。
if(fp==NULL){
printf("指定されたファイルが存在しません\n");
}
if文の中が表示されてしまうんですけどどうしたらいいですか?


45 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 19:06:50.43 ]
>>35
なぜ?
> どんな順序でも結果が同じになればいいというわけじゃない。
>
> それがいいなら、a = (i++) * (i++); もいいことになる。
>
> C-FAQ: 3.2, 3.8
とか言ってる人だから日本語通じないのかな


>>44
fscanf(fp,"%[^,],%d\n",data[i].name, &data[i].score)

46 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 19:49:33.99 ]
>>45
どういう理由で日本語通じないと言ってるのか、さっぱりわからんが、
>>24 で満足してるなら別にいいんじゃね。

別に君がどうなろうと、俺にとってはどうでもいいし。

47 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 20:30:54.82 ]
なんだ、まだ不定と未定義の区別もついてないのか。
それとも理解したくないのか。

48 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 20:42:51.06 ]
function(exp_a(), exp_b(), exp_c());
この評価順も不定だからダメと言いたいのだろうか。バカ丸出しだな。>>35

49 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 20:51:52.95 ]
>>46
> C-FAQ: 3.2
これは引数の評価順のFAQじゃないのね
C-FAQ: 3.2 で理解できないのなら
www.st.rim.or.jp/~phinloda/cqa/cqa7.html
Q 【i++ * i++】
に目を通した上で読み直してごらん

> どんな順序でも結果が同じ
とする例として
>a = (i++) * (i++);
を出すのはおかしい事に気づくはず

50 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 21:53:41.28 ]
>>49
Q 【未定義の例】未定義である場合としては、どのようなものがあるか。
A 二つの副作用完了点の間に、オブジェクトの値を2回以上変更している場合、
  又は変更した後で新しい値を得ること以外の目的でそのオブジェクトをアク セスしている場合。

fibo(fibo(&a,&b),fibo(&a,&b)); の式は、(間違ってるけど) 式中で a, b を2回以上
変更してるからダメということ。

>>47
この手の議論で「不定」とか出してくる奴には用はないよ。

>>48
exp_a( ), exp_b( ), exp_c( ) で、同一オブジェクトを変更しているかどうかが問題。
なので、exp_a( ) の内容も示せずにレスする奴は、何も理解してない馬鹿。

51 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 21:56:54.79 ]
この場合重要なのは、一つの式の中で、副作用が発生する操作を二回行う
ということです。その結果は未定義なので、この printf がどのような値を表示
してもC言語の仕様としては問題ありません。極端な場合、ここでプログラムが
異常終了してしまっても問題ありません。

52 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 22:17:54.47 ]
>>51
>この場合重要なのは、一つの式の中で、副作用が発生する操作を二回行う
>ということです。その結果は未定義なので、

ダウト。

printf("%d %d\n", a++, b++); は、副作用が発生する操作を2回しているが問題ない。

問題にすべきなのは、「同一オブジェクトに対して」副作用が複数回発生すること。



53 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 22:22:15.96 ]
もうただの揚げ足の取り合いだなw

54 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 22:29:05.79 ]
>>44
>if文の中が表示されてしまうんですけどどうしたらいいですか?
ってことはfpがNULLなんだろ。
ファイルが開けないのだから、ファイル名があっているか、パスがあっているか、
そのあたりでしょ。

それと、その構造体の宣言なら、%dに対応する変数はポインタを渡す必要があるから
>>45のとおりfscanf(fp,"%[^,],%d\n",data[i].name, &data[i].score)
data[i].nameもポインタになっているのは、わかるよね?

55 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 22:40:58.60 ]
>>50
話の通じない人だな
24の簡単なサンプルが理解できないようだから
更に簡単に書くよ

int f() { static i=2; return i++; }
int sum(int a, intb) { return a+b; }
int sub(int a, intb) { return a-b; }

int main() {
printf("%d\n", sub(f(), f()));
printf("%d\n", sum(f(), f()));
return 0;
}

これなら分かるかい?
2-3 が 3-2では困るが
2+3 は 3+2は同じだろ?
小学生でも分かる交換法則な
>>2でのケースはそれなんだよ

56 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 22:50:44.07 ]
>>51
> exp_a( ), exp_b( ), exp_c( ) で、同一オブジェクトを変更しているかどうかが問題。
かかったな。どの順序で呼んでも全然問題ありませんが、何か言い残す事は? w

int total
exp_a( )
{
total +=1;
}
exp_b()
{
total +=2;
}
exp_c( )
{
total +=3;
}

57 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 23:04:21.70 ]
どの順序で呼ぶとか以前に
同じオブジェクトを1つの式中で変更するようなコードの動作は未定義なんでしょ?

58 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 23:06:47.58 ]
足りなかった&ちょっと言い方が違うか
同じオブジェクトを1つの式中で複数回変更するようなコードを実行すると
鼻から悪魔が飛び出すんでしょ?

59 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 23:19:48.44 ]
>>57
関数呼び出しの引数並びは「一つの式」じゃありませんが。

なるほど、こんなことも知らずに「副作用完了点ガー」って、
覚えたての念仏唱えてたのか。w

60 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 23:28:26.83 ]
だから揚げ足取りw

61 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 23:31:28.55 ]
わからなくて調べててわからなかったんだが
ttp://f4.aaacafe.ne.jp/~pointc/log567.html
これの最後のレスがあってるということ?

62 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 23:33:39.64 ]
>>59
関数呼び出し(を含む式)は1つの式じゃないの?



63 名前:デフォルトの名無しさん mailto:sage [2012/02/05(日) 23:35:16.49 ]
途中で(順序は不明だが)関数を呼び出してる(副作用完了点になる)
どういう順序で関数が呼ばれても結果が変わらない
からOKということか

64 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 00:27:12.54 ]
float a = ...
float b = ...
float c = (float)(((double)a) * ((double)b));

このコードは誤差を減らすためにやっているんですか?

65 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 00:41:01.38 ]
>>64
試してみりゃいいじゃん
double a,b,c;
double a,b; float c;
float a,b; double c;
とかのパタンで


66 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 01:15:18.08 ]
素人が書きましたという意味。
それじゃ、誤差は減らないから。

67 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 07:31:33.37 ]
で、結局>>50がアフォってことでFA?
関数呼び出しが副作用完了点てことも知らなかったのかな。

68 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 08:00:23.40 ]
何にしろf(g(), h())みたいな書き方はマイナス査定対象

69 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 08:06:55.29 ]
アフォ登場。

70 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 08:25:26.34 ]
文字列中の部分文字列を検索する関数を作成したいのですが
strstr関数だと先頭に来る文字列しか検索できないので、
その次以降にも文字列が含まれているかどうか探していくにはどうやってプログラムすればいいんでしょうか
例えば str1="abcabdefgabchaiab" という文字列がある時、文字列「abc」が含まれる個数を数えるといった具合です

71 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 08:36:17.15 ]
>>70
codepad.org/MpQ8lT7F

72 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 08:47:09.95 ]
>>71
ありがとうございます!



73 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 09:08:13.60 ]
しかし、>>50の言い草はまたすごいなぁ
結局用が無かったのは>>50なわけでwww

74 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 10:02:32.17 ]
>>64
floatをdoubleにしても、元がfloatなので有効桁はfloatの時と
同じなので意味がない。
double化することにより、乗算の結果表現可能よりはみ出すこ
とを抑制できるが、float化するのでこれまた意味がない。

つまり>>50並みのアフォが書いた意味なしコード。

75 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 13:34:26.44 ]
>>67
よくわからないなら書かなければいいのにね

76 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 16:55:11.93 ]
ミーティングの時に「副作用完了点」とぼそっと呟いてみよう。
ピクッと反応した奴が>>50だ。見つけたら笑ってやれ。

77 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 17:46:54.75 ]
変数の使い方についてなんですが
プログラムを作っていて、変数が新しく必要になった時に
今までの処理で使用したけどもう役目を終えて使っていない変数があればそれを再利用すべきなのか
それとも新しく宣言した方が良いのか、どっちなんでしょうか?うまく表現できなくてすみません

78 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 17:48:08.11 ]
>>77
意味のある名前をつければおk

79 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 17:56:02.05 ]
一時変数のtmpを使いまわすかどうかとか、
2個目のループでi j を使いまわすかどうかってレベルの気がする。

80 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 18:29:11.17 ]
再利用か、別変数か、>>50の意見も聞いてみたい。
>>50の逆をいけばいい。w

81 名前:77 mailto:sage [2012/02/06(月) 18:39:41.19 ]
>>79
たぶんそのレベルでした

82 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 19:17:46.90 ]
オブジェクトの解体と再構築のコストが大きくて
可読性を犠牲にして再利用したくなるぐらいなら最利用する
そうでなければ普通に新しく作る



83 名前:はちみつ餃子 ◆8X2XSCHEME mailto:sage [2012/02/06(月) 19:23:57.62 ]
>>77
まともな最適化機能をもったコンパイラなら再利用は避けた方が効率的なプログラムになる可能性が高い。
最適化の前段階でのフロー解析において、どの変数がどこに利用されるか等のプログラムの流れを検出しようとするが、
関係の無いところでの使い回しがあると解析しにくくなる。
これは人間にとっても同じで、関係の無い使い回しがあると流れがわかりにくくなり易い。

コンパイラが C99 に対応しているならループ変数程度のものは
for (int i=0; i<n; i++) hoge();
というようにその場限りの使い捨てがやりやすいので積極的に使うといいと思う。

昔の C は関数の先頭でしか変数の宣言をできなかったが、今ではどこでも宣言できるので、
使うところの近くで宣言し、なるべく狭い範囲でだけ使うのが近代的なスタイルと考えられている。

とは言うものの、これらはあくまで原則。 やりすぎるとそれはそれで不都合があることもある。
読み易さや効率はケースバイケースなので盲目的に従うのではなく、
どちらが良いか個別の「意味」を自分なりに考えよう。

プロジェクトによって書き方にガイドラインを設けているものもあるので、
既存のスタイルを参考にするのもいいかもしれない。

84 名前:77 mailto:sage [2012/02/06(月) 19:29:34.66 ]
参考になりました。みなさんありがとうございます!

85 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 19:33:14.81 ]
C99以外の環境ってブロックの先頭以外で変数宣言できたっけ?

86 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 19:35:19.44 ]
void func(void) {
int x;
hoge(x);
{
int y;
fuga(x, y);
}
}

的な感じで書けるから実質宣言場所に制限はないと見てもいいよ

87 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 19:36:31.93 ]
できないよ

88 名前:87 mailto:sage [2012/02/06(月) 19:37:04.79 ]
>>85あてね。

89 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 19:38:41.23 ]
>>80
しばらく>>50を引き合いに出しそうな感じがするからコテつけてもらえると助かる。

90 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 19:40:58.79 ]
> プロジェクトによって書き方にガイドラインを設けているものもあるので、
> 既存のスタイルを参考にするのもいいかもしれない。

>>50のように聞きかじりの知識を振りかざして混乱させるはた迷惑なバカが
ガイドラインを作っていることも多いので、プロジェクトのガイドラインに
は疑いの目を向けることも重要。

91 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 19:54:15.48 ]
また変なのがでてきたなぁ…
コテ禁止にはしなかったんだっけ?

92 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 21:02:11.80 ]
コテつけてもらったほうがありがたい



93 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 21:07:17.15 ]
逆コンパイルでソースが復元できないC系のwindowsフォームアプリの開発言語でVSに入っているのはなんというものですか?

94 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 21:07:44.89 ]
>>92
いや、コテつけるようなやつは出入り禁止で。
>>93
スレ違い。

95 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 21:08:04.00 ]
>>85
C11ならできるだろ

96 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 21:16:17.39 ]
いや。>>50はぜひコテをつけて、このスレのおもちゃになってもらいたい。

97 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 21:25:08.17 ]
いやいや。すでに>>50って名前で定着してるだろw

98 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 22:11:33.58 ]
float a,b,c;
a = 425;
b = 293749;
c = (float)(((double)a) * ((double)b));
printf("%f %f\n",c,a*b);

99 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 22:27:12.44 ]
>>98
printf()にdoubleで渡してるからだろ。
何がいいたいんだ?
また>>50か?

100 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 22:28:09.03 ]
ワクワク、>>50の新作ギャグかな。

101 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 22:32:12.29 ]
初心者向けにC言語の暗黙のルールやバッドノウハウがまとまってるサイトとかってないかな
getsは使うなとかscanfは使うなとかそういうの

102 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 22:42:48.60 ]
C FAQの初心者版って事?
確かにC FAQ理解できなくて>>50になってしまったら悲惨だからなあ。
2chならいいけどリアルでやったら生きていけないよなあ。w



103 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 22:43:53.39 ]
お前ら容赦ないなwww

104 名前:デフォルトの名無しさん mailto:sage [2012/02/06(月) 22:46:15.96 ]
>>101
バッドノウハウを学ぶタイミングは難しいとおもう。
非推奨の関数に関してはコンパイラの警告で。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<46KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef