トップページ⇒tech
1001コメント240KB

C言語の質問スレッド<42>

レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさんNGNG
C言語に関する質問はここでしてください。

問題をちゃんと切り分けて、Cの話かそうでないか洗ってから質問してくれ。
というより、聞く前に一応 Web で検索しろ。
コンパイラを探してるなら >>2 を見ろ。
過去ログ(DAT落ちあり)なら>>3-100あたりにあるかも。

GUIとか、C標準でできない事の質問は使ってる開発環境のスレに逝ってくれ。
ソース丸投げ、宿題、書籍 は専門の別スレがあるからそこへ逝ってくれ。

未定義・処理系依存ネタはご遠慮ください。
誰かが(故意にではなく)それらの書き込みをしても、いちいち突っ込まないでください。
規格オタクはこのスレッドには必要ありません。論争したかったら独自にスレッドを立ててそこでやってください。


C FAQ 日本語訳
http://www.catnet.ne.jp/kouno/c_faq/c_faq.html
comp.lang.c FAQ(英語の原文)
http://www.eskimo.com/~scs/C-faq/top.html
Cプログラマ必読 ・プログラミング言語C(通称 K&R)
http://www.amazon.co.jp/exec/obidos/ASIN/4320026926/
推薦図書/必読書のためのスレッド PART6
http://pc3.2ch.net/test/read.cgi/tech/1033207156/


前スレ <41>
http://pc3.2ch.net/test/read.cgi/tech/1036876790/
0002デフォルトの名無しさんNGNG
【コンパイラ】
gcc
http://gcc.gnu.org/

【Win32用の開発環境のみ。】
gcc-cygwin
http://www.redhat.com/software/tools/cygwin/
gcc-mingw
http://www.mingw.org
Digital Mars C++
http://www.digitalmars.com/
Open Watcom
http://www.openwatcom.com/
Borland C++ Compiler 5.5.1
http://www.borland.co.jp/cppbuilder/freecompiler/

【ライセンスや機能などに問題あり】
Microsot C/C++ 13.0.9466(VC.NET)
http://www.microsoft.com/japan/msdn/netframework/downloads/
LCC-Win32
http://www.cs.virginia.edu/~lcc-win32/
CINT
http://root.cern.ch/root/Cint.html
めじろ++98
http://www.vector.co.jp/soft/win95/prog/se075910.html
0003デフォルトの名無しさんNGNG
40 http://pc3.2ch.net/test/read.cgi/tech/1036673739/
39 http://pc3.2ch.net/test/read.cgi/tech/1036409391/
38 http://pc3.2ch.net/test/read.cgi/tech/1035729526/ (待機中)
37 http://pc3.2ch.net/test/read.cgi/tech/1035623265/ (待機中)
36 http://pc3.2ch.net/test/read.cgi/tech/1035211039/ (待機中)
35 http://pc3.2ch.net/test/read.cgi/tech/1034337064/ (待機中)
34 http://pc3.2ch.net/test/read.cgi/tech/1033240509/ (待機中)
33 http://pc3.2ch.net/test/read.cgi/tech/1032606064/ (待機中)
32 http://pc3.2ch.net/test/read.cgi/tech/1031905402/
31 http://pc3.2ch.net/test/read.cgi/tech/1031340950/
30 http://pc3.2ch.net/test/read.cgi/tech/1030786546/
29 http://pc3.2ch.net/test/read.cgi/tech/1029605182/
28 http://pc3.2ch.net/test/read.cgi/tech/1028495798/
27 http://pc3.2ch.net/test/read.cgi/tech/1027160374/
26 http://pc.2ch.net/tech/kako/1026/10260/1026048820.html
25 http://pc.2ch.net/tech/kako/1024/10249/1024918442.html
24 http://pc.2ch.net/tech/kako/1024/10240/1024033400.html
23 http://pc.2ch.net/tech/kako/1022/10224/1022402165.html
22 http://pc.2ch.net/tech/kako/1022/10224/1022402165.html
21 http://pc.2ch.net/tech/kako/1022/10220/1022045622.html
0004デフォルトの名無しさんNGNG
20 http://pc.2ch.net/tech/kako/1021/10214/1021459016.html
19 http://pc.2ch.net/tech/kako/1020/10207/1020756993.html
18 http://pc.2ch.net/tech/kako/1020/10202/1020260813.html
17 http://pc.2ch.net/tech/kako/1019/10193/1019372139.html
16 http://pc.2ch.net/tech/kako/1018/10184/1018453690.html
15 http://pc.2ch.net/tech/kako/1016/10165/1016519243.html
14 http://pc.2ch.net/tech/kako/1015/10152/1015286974.html
13 http://pc.2ch.net/tech/kako/1013/10139/1013990673.html
12 http://pc.2ch.net/tech/kako/1012/10123/1012348974.html
11 http://pc.2ch.net/tech/kako/1009/10094/1009499565.html
10 http://pc.2ch.net/tech/kako/1008/10083/1008300863.html
9 http://pc.2ch.net/tech/kako/1007/10072/1007272267.html
8 http://pc.2ch.net/tech/kako/1005/10058/1005811510.html
7 http://pc.2ch.net/tech/kako/1005/10058/1005811510.html
6 http://piza2.2ch.net/tech/kako/999/999617524.html
5 http://piza2.2ch.net/tech/kako/994/994908590.html
4 http://piza.2ch.net/tech/kako/992/992357382.html
3 http://piza.2ch.net/tech/kako/989/989929288.html
2 http://piza.2ch.net/tech/kako/979/979529893.html
1 http://piza.2ch.net/tech/kako/967/967985026.html
0005デフォルトの名無しさんNGNG
>>1
オレに聞け!が伝統だったのに…
まあ、どうでもいいけどさ。
0006デフォルトの名無しさんNGNG
>>5
まあ、1が馬鹿ってことで。
0007デフォルトの名無しさんNGNG
>>1
> 未定義・処理系依存ネタはご遠慮ください。
> 誰かが(故意にではなく)それらの書き込みをしても、いちいち突っ込まないでください。
> 規格オタクはこのスレッドには必要ありません。

はあ?
個人的な好みで勝手に禁止事項作るなボケ!
このスレは未定義ネタで食わしてもらってんだぞ。
0008デフォルトの名無しさんNGNG
> 未定義・処理系依存ネタはご遠慮ください。
> 誰かが(故意にではなく)それらの書き込みをしても、いちいち突っ込まないでください。
> 規格オタクはこのスレッドには必要ありません。論争したかったら独自にスレッドを立ててそこでやってください。
つまらない自治オタクもいらないな。
まぁ、過去ログを纏めたことだけは感謝する。

前スレの
> 上記を守らない書き込みをした場合、その結果は禿しく未定義とする。
が、俺はC的で秀逸だと思ったのだが...。
0009デフォルトの名無しさんNGNG
>>7
お前らのせいであっという間にスレを使いきってしまうんだろうが。
0010デフォルトの名無しさんNGNG
最近のCスレは だいぶ厨房が多いな。
日下部ほどではないけども。
どこかの雑誌にでも出たのだろうか。
宿題丸投げとかも増えたし。

突っ込まれたらすぐに「ネタ」ってことにしたがるし。
0011デフォルトの名無しさんNGNG
>>1
> 誰かが(故意にではなく)それらの書き込みをしても、いちいち突っ込まないでください。

親切にバグを教えてやってるんだろうが。
0012デフォルトの名無しさんNGNG
ビット演算子について教えてください。
どんなときに使うとメリットがあるのでしょうか?
(単純に2の倍数の割り算とかは辞めてください。)
0013デフォルトの名無しさんNGNG
ビット演算子??
0014デフォルトの名無しさんNGNG
とりあえず、次スレ使い切るまでsage進行でいこう。
1を叩くのは、次スレが終わるまでってことで。
0015デフォルトの名無しさんNGNG
このスレの寿命:推定3日間
0016デフォルトの名無しさんNGNG
>>9
未定義ネタ禁止にしたら商売上がったりじゃねーか。
こちとらボランティアで書き込みしてるんじゃないんだぞ。
0017デフォルトの名無しさんNGNG
お!?
早速論争か!?
0018デフォルトの名無しさんNGNG
せめて900越えてから、新スレ作ればいいのに。
1はよっぽど自分でスレ立てをやりたかったんだな。
0019デフォルトの名無しさんNGNG
>>18
漏れもそんな気がした。
0020デフォルトの名無しさんNGNG
つーか1出てこいや。
0021デフォルトの名無しさんNGNG
>>18
http://pc3.2ch.net/test/read.cgi/tech/1036876790/859

これ、そろそろ立ててくれという意味じゃなかったのか(;´Д`)
002221 1NGNG
>>20
なんですか?
0023デフォルトの名無しさんNGNG
くだらないことで言い争う厨房が増えてきたんだから、論争はさけられないでしょ。
0024デフォルトの名無しさんNGNG
議論はお互いの知識の交換なのだから悪いことではないと思うが。
0025デフォルトの名無しさんNGNG
こんなスレの立て方最低。
0026デフォルトの名無しさんNGNG
質問スレで論争していると初心者が質問しにくくなるかもな。
0027デフォルトの名無しさんNGNG
>>5
同意。オレに聞け!がよかったのになぁ。
あと1の『俺は28才(以下略)』とかはもう無いのか・・・?
個人的にはあれ好きだったんだが・・・

スレタイもなんかレベルが下がってる気が・・・
0028デフォルトの名無しさんNGNG
             ∧         ∧               ###
            / ヽ        ./ .ヽ             /#####ヽ
           /   `、     /   .`           /  ##### \
          /       ̄ ̄ ̄    ヽ          /   #####  ヽ
          l:::::::::              .l       /    #####   ヽ
         |::::::::::  -==・-    -==・-  |      |          ::::::::: :::::::|
         .|:::::::::::::::::   \___/    |      |  -・==-   -・==- :::::::::|
          ヽ:::::::::::::::::::  \/     丿      |    \___/  :: :::::::|
          ヽ:::::::::::::::::        /       ヽ      \/    ::::::::::|
     ____>:::::::::::::::::       <_        ヽ        ::::;;;::::::::丿
    /:::::::::::::::::::::::: :::::::::          /⌒ヽ⌒、⌒、⌒、      ::::::::: :<___
    |::::::::::::;;;;;;;;;;;;;:::::::::::::::        / /ヽノヽノヽノヽノ       :::::::::::::  :::::::: :::ヽ
   |::::::::::::::::::::::::            /  /:::::::: :::::::::::::::::::::           ::::::::
          論争論争いこうか?             いいねぇ〜
0029デフォルトの名無しさんNGNG
まあ、なんだかんだいいつつ、質問+論争スレになるんだけどね。
論争ってのは大抵質問がきっかけになることが多いかんね。
0030デフォルトの名無しさんNGNG
age
0031デフォルトの名無しさんNGNG
are
0032デフォルトの名無しさんNGNG
新スレおめでとうございます。 
 つきまして、ユーザーが指定した数を
カウントする関数を教えてください。
i2=3;
j2=4;
ij=i2*j2;
if((str1=(int**)malloc(sizeof(int*)*i2))==NULL){
printf("メモリー確保の失敗:1");
exit(1);
}
for(i1=0;i1<i2;i1++)
if((str1[i1]=(int*)malloc(sizeof(int)*j2))==NULL){
printf("メモリー確保の失敗:2");
exit(1);
}


for(i1=0;i1<ij;i1+=j2){
putchar('\n');
for(j1=0;j1<j2;j1++){
printf("%c",str1[i1/j2][(len++)%i2]=('A'+i1+j1));
}
}
putchar('\n');
for(i1=0;i1<i2;i1++){
putchar('\n');
for(j1=0;j1<j2;j1++)
printf("%3d",str1[i1][j1]);
}
0033デフォルトの名無しさんNGNG
ユーザーが指定した数をカウントする関数てなによ?
もっと具体的に書けねぇの?
その訳分からんプログラムはなんだよ?
新手の荒らしか?
この手のネタにはもううんざりなんだよ
0034デフォルトの名無しさんNGNG
>>32
ごめん、何がしたいのかまったくわからない。
0035デフォルトの名無しさんNGNG
if文において、nが奇数の時としたいとき、どうすればいいですか?
0036デフォルトの名無しさんNGNG
整数なら if(n & 1) とか if(n % 2)
0037デフォルトの名無しさんNGNG
>>35
if(n&1){ /* 奇数の時 */ }
003832NGNG
まず、i2とj2にユーザーが指定した数字を入れる。
 この場合

ABCD
EFGH行/*3行4列の配列*/
IJKL
/*下と上が、一致する事を目標としている*/
68 66 67205
71 72 70205
74 75 76205 といった結果がでる
0039デフォルトの名無しさんNGNG
>36-37
おお、ありがとうございます。
こんな時間に助かります、まじで。
0040デフォルトの名無しさんNGNG
if(n%379721){ /* 奇跡の時 */ }
0041デフォルトの名無しさんNGNG
ところで、
if (flag == true)
と書いたって、flagが87や-1や1000にならないという保証は
何もないよね?
0042デフォルトの名無しさんNGNG
>>41
なんのことかしらんが、代入しているわけじゃないからflagはかわらんだろ?
違うのか?
0043デフォルトの名無しさんNGNG
>>41
if (flag) と書いても if (flag == true) と書いても
flagの値が何であるかの保証にならないのは同じ。

if (flag) のとき、Cの真偽の定義(0か0以外か)がそのまま使える。
if (flag == true)は冗長なだけで利点は何もない。
004435NGNG
おおお!!
成功しました。
まじで、ありがとう。
0045デフォルトの名無しさんNGNG
>>40
if ( !(n % 379721) ) { /* 奇跡の時 *? }
じゃなくって?
0046デフォルトの名無しさんNGNG
flagが87だろうと-1だろうと1000だろうと==trueは真だよね?と聞きたいのだろう。
004740NGNG
>>45
そうですた。
004832NGNG
本や2ちゃんねらは、あてにならないのでこのカウントする
プログラムでC言語を実験することにした。 
004946NGNG
ごめん。間違いた。
0050デフォルトの名無しさんNGNG
>>48
頭は大丈夫ですか?
0051デフォルトの名無しさんNGNG
前スレで
「if (flag == true)と書くと、flagの値が真偽値であることが
はっきりする」
と書いてた白痴がいたんだよ。
0052デフォルトの名無しさんNGNG
ここはみっともないインターネットですね。
005332NGNG
 >>50う〜ん!!どこか渡し、アタマ変でチュカ・・・!
   まともな事書いてるつもりなのにょににゃ〜。
0054デフォルトの名無しさんNGNG
>>32は真性?
0055デフォルトの名無しさんNGNG
話の前提は
C99ではないCで
#define false 0
#define true 1
int flag;
 :
 :
if(flag == true)
とする。
0056デフォルトの名無しさんNGNG
> 俺あんな次スレやだよ。伝統守って欲しいよ。だからこれきぼん。

タイトルが〜に聞けじゃなかったことなんて何回かあったと思うが・・・
0057デフォルトの名無しさんNGNG
前スレ1000にワロタ
0058デフォルトの名無しさんNGNG
>>51
あれはネタだって
0059デフォルトの名無しさんNGNG
そんなに型を確定させたいなら、
if( bFlag )
とかにでもしとけ
0060デフォルトの名無しさんNGNG
つーかさC言語しか知らん奴が多すぎ。もっと広い目を持て。
006132NGNG
 このスレに、ジサクジエンがいまちゅね・・・!!
 >>54
0062デフォルトの名無しさんNGNG
ハンガリアンキタ━━━━━━(゚∀゚)━━━━━━ !!!!!
0063デフォルトの名無しさんNGNG
あの熱さはネタじゃない。そうさ、奴はいつだって全力投球さ。
0064デフォルトの名無しさんNGNG
>>60
Cスレで何言ってんだ
0065デフォルトの名無しさんNGNG
if (flag)擁護派はC言語しか知りません。
0066デフォルトの名無しさんNGNG
>>65
逆
0067デフォルトの名無しさんNGNG
>>65
Cスレで何言ってんだ
0068デフォルトの名無しさんNGNG
>>65
PerlでもPHPでもそう書いています。
0069デフォルトの名無しさんNGNG
>>65-66 ジサクジエーン
0070デフォルトの名無しさんNGNG
>>68
JavaやC#やVB.NETではどうですか?
0071デフォルトの名無しさんNGNG
>60

#define begin {
#define end }
とかやる人でつか?(w
0072デフォルトの名無しさんNGNG
で、この話題で得ってあんの?
0073デフォルトの名無しさんNGNG
1レス10円だそうです
0074デフォルトの名無しさんNGNG
なんでCスレで他の言語を持ち出すのか謎。
0075デフォルトの名無しさんNGNG
>>74
C使いが他の言語を知っていることを証明するためです。
007632NGNG
 このソースを愚弄した奴がわるい。

i2=3;
j2=4;
ij=i2*j2;
if((str1=(int**)malloc(sizeof(int*)*i2))==NULL){
printf("メモリー確保の失敗:1");
exit(1);
}
for(i1=0;i1<i2;i1++)
if((str1[i1]=(int*)malloc(sizeof(int)*j2))==NULL){
printf("メモリー確保の失敗:2");
exit(1);
}


for(i1=0;i1<ij;i1+=j2){
putchar('\n');
for(j1=0;j1<j2;j1++){
printf("%c",str1[i1/j2][(len++)%i2]=('A'+i1+j1));
}
}
putchar('\n');
for(i1=0;i1<i2;i1++){
putchar('\n');
for(j1=0;j1<j2;j1++)
printf("%3d",str1[i1][j1]);
}
0077デフォルトの名無しさんNGNG
Lisp では
(if flag <then節> <else節>)
(if (eq flag true) ...) なんて書くやつぁDQN

ML では
if flag then <then節> else <else節>;
if flag = true then .. なんて書くやつはDQN
0078デフォルトの名無しさんNGNG
プログラミング初心者の方へ:

たいていの言語では、

0 - 偽
それ以外 - 真

と評価されます。
0079デフォルトの名無しさんNGNG
俺としては
if(flag)
これは良いんだが(というかしょうがない)
if(!flag)これも併用すると複雑な式の中で'!'を見逃す可能性があるから
if(flag == FALSE)と明示した方が良いと思うが。

if(!*s)やif(!s)では意味が違う訳だろ?
簡潔だが見間違いが起こりやすい。
if(*s == '\0')
if(s == NULL)
これなら明解だろ。
0080デフォルトの名無しさんNGNG
>>75
ネタは他いけ。
008132NGNG
 わかっとるわ〜い( ゚Д゚)ゴルァ!
0082デフォルトの名無しさんNGNG
>>79
それは誰も問題にしてない。
前提は>>55
0083デフォルトの名無しさんNGNG
>>76
そのソースを愚弄したんじゃなくて、意味不明な質問を注意したんでしょ?
0084デフォルトの名無しさんNGNG
>>78
おまえのいう「たいていの言語」ってなんだよ?(ワラ
0085デフォルトの名無しさんNGNG
(´-`).。oO(DQNの>>75祭りの予感…)
0086デフォルトの名無しさんNGNG
>たいていの言語
CスレなんだからCの話すればいいじゃんよ・・・
0087デフォルトの名無しさんNGNG
>>84
無知だな(藁
0088デフォルトの名無しさんNGNG
32 ってまじやばくない?
さっきから挙動不審なんだけど?
0089デフォルトの名無しさんNGNG
CならCらしいプログラムを書く。
他の言語ならその言語らしいプログラムを書く。

これじゃだめなのか?統一しないとだめなのか?
0090デフォルトの名無しさんNGNG
Cで叩かれたので他の言語を持ち出して優位になろうと必死
しかしスレ違いでまた叩かれる罠
0091デフォルトの名無しさんNGNG
Javaだとそもそもif文の条件にはboolean型しかかけない。
だからif (flag == true)なんて書くアフォはいない。
0092デフォルトの名無しさんNGNG
Cでこの程度じゃ(以下自粛
0093デフォルトの名無しさんNGNG
>>87
おまえは無知かつ無恥だな(W
009432NGNG
 だったらこれ、一致させてみてくだちゃい。
  なお、printf("%3c",str1[i1][j1]);修正したぞ

ABCD
EFGH
IJKL

D B C ヘ
G H F ヘ
J K L ヘ
0095デフォルトの名無しさんNGNG
>>82
無意味なことをしているという点では同じだろ。
0096デフォルトの名無しさんNGNG
つーかこっそりと去ればいいのにこじつけるからまた叩かれるんだよな・・・
0097デフォルトの名無しさんNGNG
これで統一すれば解決。論争は起こらない。
if (flag == FALSE){
}
else{
/* 処理 */
}
0098デフォルトの名無しさんNGNG
>>94
目的を明確にしないと分からないんだってばー
0099デフォルトの名無しさんNGNG
>>91
へー。Javaはifではboolean型しか書けないのか不便だな(w
0100デフォルトの名無しさんNGNG
>>97
うひょーーー!とんでもないあふぉ発生!
0101デフォルトの名無しさんNGNG
もしflagがtrueかfalse(=0)しか取らないなら、
if (flag == true)は単に冗長で無駄で見にくいだけ。

もしflagがtrueやfalse以外もとるなら、
if (flag == true)で真偽をテストするのは単なる間違い。
0102デフォルトの名無しさんNGNG
>>100
これ以上醜態を晒すな
0103デフォルトの名無しさんNGNG
>>97
そんなのむだ。
if (flag){
/* 処理 */
}
else{
}
でいい。
0104デフォルトの名無しさんNGNG
今日は、(・∀・)イイ!!
0105デフォルトの名無しさんNGNG
>>99
これだから C 言語しかしらないやつは.......
0106デフォルトの名無しさんNGNG
「if(flag==true)が可読性が上がって良い」と言ってる奴が去って
実はもうこの話題は終了してる罠。
0107デフォルトの名無しさんNGNG
>>103
それをやるとif(flag == true)の方がと言い出す奴がいるから
>>97のように書いたんだが。
0108デフォルトの名無しさんNGNG
Javaではifでbooleanしかかけないので、==を=と書いてしまう
バグはめったに起きない。

起きるとしたら普段if (flag == true)と書いてるアフォが
if (flag = true)としちゃったときだけ。
0109デフォルトの名無しさんNGNG
おやおや、またbool争いですか?

結局ifの中にbool以外を書けるC言語の仕様が糞ということでしょ。
011032NGNG
 だから、ユーザーが指定した数をカウントする関数
 をつくるのが目的なんだよ。
   for(i1=0;i1<ij;i1+=j2){
putchar('\n');
for(j1=0;j1<j2;j1++){
printf("%c",str1[i1/j2][(len++)%i2]=('A'+i1+j1));
}
}
for(i1=0;i1<i2;i1++)
for(j1=0;j1<j2;J1++)
 str[i1][j1]=i1+j1ではカウントできなでしょ。
  色々、試していくうちにこう言う形になったんだよ。
 
0111デフォルトの名無しさんNGNG
32の主治医でs(略
011232NGNG
>>111おまえ、完全に荒らしじゃねか〜.
じゃあ!!どの変がやばい・・・いってみろ
0113デフォルトの名無しさんNGNG
>>108
> 起きるとしたら普段if (flag == true)と書いてるアフォが
> if (flag = true)としちゃったときだけ。
それってJavaの話だよね。そんなことって出来たっけ?
0114デフォルトの名無しさんNGNG
>>32
( ゚Д゚) ポカーン……
0115デフォルトの名無しさんNGNG
カウントするだけで配列、それも二次元配列使うのがよくわからん。
0116デフォルトの名無しさんNGNG
>>109
bool以外を書けたほうが便利だろ。
0117デフォルトの名無しさんNGNG
ソース読んでないけど、そもそも「ユーザーが指定した数をカウントする」
ってのが具体的に何をすることなのかよく分からない。
0118デフォルトの名無しさんNGNG


 >>32 は こ の 先 放 置 で お な が い し ま す
0119デフォルトの名無しさんNGNG
boolの話はもう終わってるし、>>32は違う意味で終わってるから、
他の話題きぼんぬ。
0120デフォルトの名無しさんNGNG
>>116
だから、具体的にどんなときだよ
ってこれ昨日もでたネタだな
0121デフォルトの名無しさんNGNG
>>116
単に !=0 が省けるだけやん。
そのおかげでどれだけみんな苦労してるか。
0122デフォルトの名無しさんNGNG
>>120
Cの実装が楽になる。
0123デフォルトの名無しさんNGNG
>>121
苦労するほどのものか?
0124デフォルトの名無しさんNGNG
>>121
同じ処理をするならソースは短い方が無条件に(・∀・)イイ!!
0125デフォルトの名無しさんNGNG
>>122
C の実装?????????????????????
0126デフォルトの名無しさんNGNG

          釣  ら  れ  る  な

012732NGNG
 >>115ご返答・・・ありがとうございます。C言語いじってるうちに
 配列の格納にABC
DEF
GHIのようにカウントできたらいいなと思ったんです。
  C言語は、人によって色々記述がかわってくる。 それが、
 特徴であるはず。 まあ、わかりやすいはべつだが。

  つまり、めんどくさかったんです。strcpy(str[i],"ABC");のように
 するのが。  今はint型だけど、最終的にはchar型にも
 
 使えるようになったらなと思って作ったのよ。
0128デフォルトの名無しさんNGNG
>>29
やっぱりな(ワラ
0129デフォルトの名無しさんNGNG
>>103
俺の場合は判定はエラー捕獲が多いから

if(flag == NULL){
/*エラー処理1*/
} else if(flag2 == NULL) {
/*エラー処理2*/
} else {
/* 通常処理 */
}
と書く時が多いな。最後のelseを省略すると更に簡潔になる。
因みに同じ事をTRUE判定でやろうとすると,

if(flag) {
if (flag2) {
/* 通常処理 */
} else {
/* エラー処理2 */
}
} else {
/*エラー処理 */
}
ネストができ、elseも取り除けない。
「プログラム作法」で学んだ。
0130デフォルトの名無しさんNGNG
あのな、boolしか書けないようにしとけば、
== と = を取り違えるバグが99%くらい
無くなるだろうが。
0131デフォルトの名無しさんNGNG
>>124
7行スレへカエレ!
0132デフォルトの名無しさんNGNG
32 は何?
アルコール? クスリ? ビョーキ?
0133129NGNG
s/NULL/FALSE/g
だった、失礼。
0134デフォルトの名無しさんNGNG
>>129
flagにポインタ入れんなよT_T)
0135デフォルトの名無しさんNGNG
>>129
まじか?
if ( !flag )
で解決だと思うんだが
0136デフォルトの名無しさんNGNG
>>127
カウントって数えるという意味で使っているよな?
0137デフォルトの名無しさんNGNG
>>135に激しく同意。
0138デフォルトの名無しさんNGNG
if not (condition...)と読めたほうが素直だね。
0139デフォルトの名無しさんNGNG
>>129
なぜNULLなんてものを使う? これでいいだろ。
if(!flag){
/*エラー処理1*/
} else if(!flag2) {
/*エラー処理2*/
} else {
/* 通常処理 */
}
0140デフォルトの名無しさんNGNG
>>130
でもそれ警告してくれるじゃん
014132NGNG
 >>136 これ以上、折れになんの答えを求める。 なぜ、実際に
 みてわかろうとしない。
0142デフォルトの名無しさんNGNG
!flagかflag==FALSEなんかスタイルだろ。
スタイル論争は不毛だからやめてクレヨン。
0143デフォルトの名無しさんNGNG
>>32
誰が見ても理解不能。ちゃんと説明シレ。
0144デフォルトの名無しさんNGNG
>>113
>> if (flag = true)としちゃったときだけ。
>それってJavaの話だよね。そんなことって出来たっけ?
できるよ。
0145デフォルトの名無しさんNGNG
>>135
flag==FALSEは
flagがFALSEな時は特別な場合でそれを強く明示できる効果がある。
別に!でも悪くは無いが。
上に書いてあったがif(!s),if(!*s)のようなケアレスミスも起こりやすい。
(起こす方がバカと言うのは無しね。)
0146デフォルトの名無しさんNGNG
>>140
毎回警告に従うくらいならエラーの方が良い。
0147デフォルトの名無しさんNGNG
!sがなぜミスを起こしやすいのか分らんが...
フォントが小さいのでは?
0148デフォルトの名無しさんNGNG
if ( (a = true) && (b = false) && (c = true) )
こういうのは gcc では -Wall しても警告してくれないね
0149デフォルトの名無しさんNGNG
>>141
あーーーー!!
もしかして配列の添え字に文字列を使いたいとか思っている?
Perlなどでお馴染みの連想配列のように。
0150デフォルトの名無しさんNGNG
最近「そうだったのか!勉強になったYO!」という話題が無いな・・・
0151149NGNG
でないと配列に格納するときにカウントってのがさっぱりわからん
015232NGNG
 >>132 からっている、バカリでなくその根拠を述べよ。
  折れのソースのどこがやばい・・・。
0153デフォルトの名無しさんNGNG
>>145
慣れだと思う。
0154デフォルトの名無しさんNGNG
>>144
そうだっけか。それが出来ないのはC#だっけ?
0155デフォルトの名無しさんNGNG
>>135
*p++ = *q++ も警告してほしいか?
コンパイラに、=が正しいか==が正しいか区別できるか?
(人間でもぱっと見 まようけどなー)
0156デフォルトの名無しさんNGNG
ぱっと見 まようようなコードは書くな。
015732NGNG
>>149 まあ、ハッシュを使えばそうなるが。
  色々と、C言語のポインタとかにも悩んでいてな。
   型の性質を、知るためにこれで実験してるわけだ。
  色々と・・・・。
0158デフォルトの名無しさんNGNG
>>155
だれにレス?
0159155NGNG
>>135じゃなくて>>140ですた。
0160109NGNG
反論が無いのでオレの言うとおりとする。
0161デフォルトの名無しさんNGNG
>>159
ああおれか、
警告出して欲しくないのは括弧でくくってる。
0162デフォルトの名無しさんNGNG
詭弁の特徴のガイドライン
4:主観で決め付ける
147 :デフォルトの名無しさん:02/11/13 02:24
!sがなぜミスを起こしやすいのか分らんが...
フォントが小さいのでは?
0163デフォルトの名無しさんNGNG
このスレ、さっさと1000付けてセンスのある別の1の次スレきぼんぬ。
0164デフォルトの名無しさんNGNG
>>162
議論に負けると必ずそれ出すやついるけど、同一人物か?
0165デフォルトの名無しさんNGNG
>>161
うん。そうするくらいなら
(*p++ == *q++)と
(*p++ = *q++) != 0と
書き分ければよいだろう?

(*p++ = *q++)と書ける便利さが、
これをエラーにしてくれるときの安全さを
上回るか?というと疑問だと思う。
0166デフォルトの名無しさんNGNG
・・・なのでは?

これって決めつけだったのか。
016732NGNG
 >>163 確かに・・・。 人のソースを読まずに馬鹿にする奴だからな。
0168デフォルトの名無しさんNGNG
>>32

int a;
printf("整数を入力しる:");

scanf("%d",&a);

printf("入力された値は %d ですが何か?",a);

っでカウントしたことにならんのか?
0169デフォルトの名無しさんNGNG
!sがミスを起こしやすいってのは主観的だよね。
それもかなり偏った…
0170デフォルトの名無しさんNGNG
>>169に禿同。
0171デフォルトの名無しさんNGNG
>>169
ネタはもういいって。
0172デフォルトの名無しさんNGNG
安全を犠牲にして便利さを追及するやつは原子力推進派
0173デフォルトの名無しさんNGNG
詭弁の特徴のガイドライン
7:的を射たことを言われると「ネタはもういい。」と言う。
0174デフォルトの名無しさんNGNG
詭弁の特徴のガイドライン
4:主観で決め付ける
!sがミスを起こしやすいってのは主観的だよね。
それもかなり偏った…
017532NGNG
>>168 ならないのです。 あくまでも、カウントって
 count++;みいたいに、1,2,3,4,5,6←これが、カウントだ。
  まあ、こんな簡単なんじゃないけどね。
   ようは、for文を使った簡潔な記述をしたいわけ。
0176デフォルトの名無しさんNGNG
>>171
ワラタ
0177デフォルトの名無しさんNGNG
>>32
まずは日本語の勉(ry
0178170 ( != 169) だが…NGNG
if(!flag)でいいだろ?
簡潔に逝こうよ…
0179デフォルトの名無しさんNGNG
C++で、
if(HOGE *p = get_hoge())
って書けるくせに
if(a = b)
の警告は、お節介。

C++で、
if(HOGE *p = get_hoge())
って書けるくせに
0180デフォルトの名無しさんNGNG
>>175
for(i=0;i<j;i++)
printf("%d,",i);

こんな感じじゃだめなのか?最後に,がついてしまうのは自分でなんとかしろ。
0181デフォルトの名無しさんNGNG
>>32
int main( void ) {
int i;
puts ( "好きな所で止めろ" );
getchar();
for ( i = 1; ; i++ ) printf ( "%d\n", i );
return 0;
}
018232NGNG
 うっせよ・・・>>177
  これの、どこが理解できない。
0183デフォルトの名無しさんNGNG
だからスタイルに答えなんかでないんだって・・・
0184デフォルトの名無しさんNGNG
>>173
詭弁ってのはもう少し上等だよ。
どこが間違ってるか一見わからないようなもの。

! s が読みにくいなんていう、一見してジョークと分るのは
ネタという。
0185デフォルトの名無しさんNGNG
>>173
煽りに堪えてよく煽り返した、感動した!
0186デフォルトの名無しさんNGNG
>>184
厨房のガイドラインの方がよかったか?(ワラ
0187デフォルトの名無しさんNGNG
>>32
おまえ、「たこくじら」だろ、マスターネットに居た。
0188デフォルトの名無しさんNGNG
煽りに堪えかねて煽り返したわけだが
0189デフォルトの名無しさんNGNG
>>186
同意
019032NGNG
 >>181 いやオもろいけど・・・。おもろいけど
  while(kbhit())関数使おうよそんなANSICに違反した書き方
 はいいから。
0191デフォルトの名無しさんNGNG
>>32はリアル厨房じゃねーの?
0192デフォルトの名無しさんNGNG
!が見にくい老眼の人は、
#define NOT !
とか、
#define IS_FALSE(x) (!(x))
とかしとくと良いと思う。
0193もまずにパピコNGNG
>>191
ひとりでままごとしてるんだからほっといてやれ
0194デフォルトの名無しさんNGNG
だれにでも分かりやすいスタイル
if(flag==FALSE)

そうでないスタイル
if(!flag)
0195デフォルトの名無しさんNGNG
>>194
まだいたの
0196デフォルトの名無しさんNGNG
>>190
ANSI Cに違反していないだろ。
ANSI Cの標準ライブラリにない関数を使っているだけで。
0197デフォルトの名無しさんNGNG
あー、コーディングスタイル論争うぜー
0198デフォルトの名無しさんNGNG
>>194
そのネタ飽きた。
0199デフォルトの名無しさんNGNG
人のソースもろくすっぽ読んだ事の無いアホな>>184が何か言ってますよ、Knuthさん。

0200デフォルトの名無しさんNGNG
ループ
0201デフォルトの名無しさんNGNG
>>197
あー、こーでぃんぐ すたいる ろん あらそうぜー
に見えた
0202デフォルトの名無しさんNGNG
>>194
そういう変わったスタイル押し付けるのはやめようぜ。
0203デフォルトの名無しさんNGNG
なんか今日はろくな話題がないな。
スレタイの伝統を破ったせいかな。
0204デフォルトの名無しさんNGNG
このネタで朝まで逝けそうだ(藁
0205デフォルトの名無しさんNGNG
>>203
伝統ならとっくに破られていたような・・・
0206デフォルトの名無しさんNGNG
>>203
「スタイルの伝統を破った」に見えた。
0207デフォルトの名無しさんNGNG
疲れてるんだよ。
0208デフォルトの名無しさんNGNG
11:レッテル貼りをする
192 :デフォルトの名無しさん:02/11/13 02:48
!が見にくい老眼の人は、
020932NGNG
 
  ∧_∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ( ´∀`)< >>1がド厨房。
 (    )  \_________
  | | |
 (__)_)
0210デフォルトの名無しさんNGNG
てか
if ( flag == FALSE )
がいいなんていってんのは独りだけだろ?
0211デフォルトの名無しさんNGNG
336: C言語の事訊いて!!!第.38支部 (1001) 
0212デフォルトの名無しさんNGNG
>>194
OK,わかった。
老眼の藻前に!sと書けとは言わんから、
その変態的スタイルを主張しつづけるのはやめろ。
0213デフォルトの名無しさんNGNG
今度は32が>>1をたたき出したぞ(稿
0214デフォルトの名無しさんNGNG
>>194必死だな(藁
0215デフォルトの名無しさんNGNG
見づらかったらフォント替えれ。
0216デフォルトの名無しさんNGNG
>>211
同一人物
0217デフォルトの名無しさんNGNG
>>210
俺以外に言っている奴がいることは確かだ。
0218デフォルトの名無しさんNGNG
そんなスタイルどっちでもいいって。
0219デフォルトの名無しさんNGNG
>>217
じゃあ二人か?
0220デフォルトの名無しさんNGNG
ばかばっか
0221デフォルトの名無しさんNGNG
>>220
オマモナー。
0222デフォルトの名無しさんNGNG
>>194
ひょっとしてチミは
if (isalpha(c) == FALSE)
と書くのか!?
0223デフォルトの名無しさんNGNG
if(!flag)
こんな書きかたするから見にくい
if ( !flag )
スペースを有効に使え
0224デフォルトの名無しさんNGNG
4:主観で決め付ける
210 :デフォルトの名無しさん:02/11/13 02:52
  てか
  if ( flag == FALSE )
  がいいなんていってんのは独りだけだろ?
0225デフォルトの名無しさんNGNG
>>222
んなセンスないことしたら、せっかくis...と名付けてるのが
だいなしじゃん。
0226デフォルトの名無しさんNGNG
>>224
いいかげんあきた
0227デフォルトの名無しさんNGNG
>>223
ふつー
if (! flag)
だろ。
022832NGNG
          ||
  ∧_∧     ||
 ミ,,・∀・ミ Λ_||_,,,
 (シ  つ(;;;。∀゚;.)   ∧_∧
@ミUノ  (:#," @  _(・∀・,∩ ヒィーヤッホウゥウ
      |,;.#;|';::.|⊂____つノ
      (__)_)
  __∧__________
/ ボロボロになってきたデチ

0229デフォルトの名無しさんNGNG
>>227
んなぁやつぁいねぇ
0230デフォルトの名無しさんNGNG
たしかに飽きた。
だからお前は勝手に==FALSE書いてろや。
一緒に仕事しない限り文句は言わん。
0231デフォルトの名無しさんNGNG
8:知能障害を起こす
226 :デフォルトの名無しさん:02/11/13 02:57
  >>224
  いいかげんあきた
0232デフォルトの名無しさんNGNG
>>229
K&RもGNUも>>227
0233デフォルトの名無しさんNGNG
>>232
K&R は知らんが GNU はクソ
0234デフォルトの名無しさんNGNG
>>223
括弧の内側に空白あけるのは典型的DQN
0235デフォルトの名無しさんNGNG
>>222
194じゃないけどisalpha(c)は日本語にすると「アルファベットか?(c)」だから==FALSEは書かない。
023632NGNG
 >>277 無能な>>1を、あの世に送ろうぜ・・・
0237デフォルトの名無しさんNGNG
>>233
お前は勝手に「俺スタイル」で書いてればいい。
だから、世の中の人々のスタイルに口を出すな。
0238デフォルトの名無しさんNGNG
つーかスタイル論争自体むだむだむだ
0239デフォルトの名無しさんNGNG
>>237
Linus たんが言ってたのよ〜
0240デフォルトの名無しさんNGNG
今日は一段と厨房レスばかりだな
0241デフォルトの名無しさんNGNG
>>235
だから!で良いんだろ?
0242デフォルトの名無しさんNGNG
>>240
さらに脳障害もいる。
0243デフォルトの名無しさんNGNG
昔は、if(hoge == FALSE)なんて書いたらアホコード吐いたんだよ。あほ。
0244デフォルトの名無しさんNGNG
あと、
return(x);
みたいに書くやつ。
関数と文の区別がついてないんじゃないか?
0245若造NGNG
>>243
どんな?
0246デフォルトの名無しさんNGNG
すべて1が悪い。
0247デフォルトの名無しさんNGNG
ダメだこりゃ
024832NGNG
>> 237 これの、どこが世の中に人々のスタイルなわけ。
 >>32
int main( void ) {
int i;
puts ( "好きな所で止めろ" );
getchar();
for ( i = 1; ; i++ ) printf ( "%d\n", i );
return 0;
}
0249デフォルトの名無しさんNGNG
>>248
もう黙れよJPS
0250デフォルトの名無しさんNGNG
>>248
お前、>>1が気に入らないからこのスレをつぶそうとしているだけだろ?
0251デフォルトの名無しさんNGNG
ishoge系はこう書く。
if(isalpha(c)){
} else if (isdigit(c)){
}
あるものの否定を考えるよりも何かに合致してるかどうかを考える方が安易。
!をやたら使いたがる奴はDQN。
0252デフォルトの名無しさんNGNG
>>32
なんか読みにくかったから、手を入れてみた。
  int m = 3;
  int n = 4;
  int **str;
  int i, j;

  if ((str = (int**)malloc(sizeof(int*) * m)) == NULL) {
    printf("メモリー確保の失敗:1");
    exit(1);
  }
  for (i = 0; i < m; i++) {
    if((str[i] = (int*)malloc(sizeof(int) * n)) == NULL) {
      printf("メモリー確保の失敗:2");
      exit(1);
    }
  }

  for(i = 0; i < m; i++){
    putchar('\n');
    for(j = 0; j < n; j++){
      str[i][j] = 'A' + i * n + j;
      printf("%c", str[i][j]);
    }
  }
  putchar('\n');
  for(i = 0; i < m; i++){
    putchar('\n');
    for(j = 0; j < n; j++) {
      printf("%3d",str[i][j]);
    }
  }
0253252NGNG
表示結果
ABCD
EFGH
IJKL

65 66 67 68
69 70 71 72
73 74 75 76
0254デフォルトの名無しさんNGNG
スタイル厨必死だな
025532NGNG
 ああ・・・。 だったら、これ答えてよ
i2=3;
j2=4;
ij=i2*j2;
if((str1=(int**)malloc(sizeof(int*)*i2))==NULL){
printf("メモリー確保の失敗:1");
exit(1);
}
for(i1=0;i1<i2;i1++)
if((str1[i1]=(int*)malloc(sizeof(int)*j2))==NULL){
printf("メモリー確保の失敗:2");
exit(1);
}


for(i1=0;i1<ij;i1+=j2){
putchar('\n');
for(j1=0;j1<j2;j1++){
printf("%c",str1[i1/j2][(len++)%i2]=('A'+i1+j1));
}
}
putchar('\n');
for(i1=0;i1<i2;i1++){
putchar('\n');
for(j1=0;j1<j2;j1++)
printf("%3c",str1[i1][j1]);
}

return 0;
}
0256デフォルトの名無しさんNGNG
脳障害の>>242が何か言ってるな。
0257デフォルトの名無しさんNGNG
>>252
if ((str = (int**)malloc(sizeof(int*) * m)) == NULL) {
じゃなくて
if (!(str = (int**)malloc(sizeof(int*) * m))) {
にしろって。話聞いてなかったのか?

0258252NGNG
>>32
で、どうすりゃいいわけ?
0259デフォルトの名無しさんNGNG
{x^(-2/3)}・{(1-x)^(-1/3)} ← これを表わすのに、
pow(x, -2/3)*pow(1-x, -1/3) ← この書き方で合ってますか?
0260デフォルトの名無しさんNGNG
>>251
へえ。じゃあ「アルファベット以外」ってどう書くのさ。
「アルファベットでも数字でもない」ってのは?
0261252NGNG
>>257
聞いてなかった。
026232NGNG
>>252 まあ、大分内容は変わってるが参考にはなりそうだ。
0263デフォルトの名無しさんNGNG
整数/整数って浮動少数で評価されたっけ?
0264デフォルトの名無しさんNGNG
>>259
合ってません。整数/整数は切り捨てて整数になります。
0265デフォルトの名無しさんNGNG
>>263
されないけど、powに渡せば結果がdoubleになるだろ?
0266デフォルトの名無しさんNGNG
>>264
あの、>259のような場合どういう書き方をしたら良いですか?
0267デフォルトの名無しさんNGNG
>>265
渡す前に切り捨てられちゃうって…
0268デフォルトの名無しさんNGNG
str = (int**)malloc(sizeof(int*) * m);
if (!str) {
0269265NGNG
あー、この場合はわり算をするときにdoubleでやらないといけないのか。
.0をつければOKだよね
0270デフォルトの名無しさんNGNG
pow(x, -2.0/3)*pow(1-x, -1.0/3)
0271デフォルトの名無しさんNGNG
>>266
分母の前にでも (double) 入れろ
0272デフォルトの名無しさんNGNG
>>260
人に聞く前にコード書いてみたらどうかな、お馬鹿さん。
0273デフォルトの名無しさんNGNG
{x^(-2/3)}・{(1-x)^(-1/3)}
pow(x, -2.0 / 3.0) * pow(1.0 - x, -1.0 / 3.0)
0274デフォルトの名無しさんNGNG
>>268
なんでわざわざ二つに分けるんだ? 一行でいいだろ。
027532NGNG
>>252 と>>32は、別人なのでは・・・
0276デフォルトの名無しさんNGNG
>>274
そんな簡単に釣られるなよ(w
0277デフォルトの名無しさんNGNG
>>272
if(isalnum(c)){
/* なにもしない */
}
else{
/* ここでなにかする */
}

これくらいしか思いつかない・・・・
0278デフォルトの名無しさんNGNG
>>277
んなことするやつぁ超DQNの馬鹿
0279デフォルトの名無しさんNGNG
>>278
だって!を使ってはならないって言うし!
0280デフォルトの名無しさんNGNG
if (!(str = (int**)malloc(sizeof(int*) * m))) {
なんて書く奴はDQN

0281デフォルトの名無しさんNGNG
>>274
何でもかんでも一行で書かないとダメな人?
0282デフォルトの名無しさんNGNG
>>272
ん? おれは「!マンセー」派だもの。
読みやす〜く
if (!isalpha(c))
if (!isalnum(c))
と書くわさ。

あんたは!使わずにどう書くんだい?
0283デフォルトの名無しさんNGNG
>>280
禿同!!
0284デフォルトの名無しさんNGNG
if ((str = (int**)malloc(sizeof(int*) * m))==NULL) {
の方が見やすいと思うが。
0285デフォルトの名無しさんNGNG
>>279
!を使わないやつはDQN
真似するとDQNが移る。
0286デフォルトの名無しさんNGNG
>>284
おまいの感覚を疑う
0287268NGNG
>>274
while では一行でかくこともある。
でも if では必要ない。
0288デフォルトの名無しさんNGNG
>>286
世の中の教科書もFAQも規格も全部こうだゴラァ
疑うなら自分の感覚だろ。
0289デフォルトの名無しさんNGNG
>>284
str = (int**)malloc(sizeof(int*) * m)
if (str == NULL) {
の方が一番イイ!
0290デフォルトの名無しさんNGNG
>>288
>>世の中の教科書もFAQも規格も全部こうだゴラァ
知障か?
0291デフォルトの名無しさんNGNG
>>287

else ifだとどうなるんだ?
0292デフォルトの名無しさんNGNG
>>288
ウソツキ。
0293デフォルトの名無しさんNGNG
fopenも

fp=fopen("32.aho","r");
if(fp==NULL){
}

こう書くかな。
if(!(fp=fopen("32.aho","r"))){ } とかくこともあるけど。
0294デフォルトの名無しさんNGNG
>>287
whileならいいのにifはダメかよ。
なんちゅー一貫性のなさだ。
0295デフォルトの名無しさんNGNG
else {
str = ...
if (str)...
}
029632NGNG
  >>252 恩に着る アフォに汚染されるところだった。
0297252NGNG
もしかしてこんな関数を作りたかったのか?
void count(int **str, int m, int n, int base)
{
  int i, j;
  for(i = 0; i < m; i++){
    for(j = 0; j < n; j++){
      str[i][j] = base + i * n + j;
    }
  }
}

使い方
count(str, m, n, 'A');
0298デフォルトの名無しさんNGNG
>>294
あふぉか?
while はどうしても2行にわけられないときがある
if は必ずわけれる
0299デフォルトの名無しさんNGNG
>>298
else if の中だとどうするんだ?
030032NGNG
 >>297助かります。ガンガン持ってきて。
0301一番叩かれる意見NGNG
mallocなんて戻り値チェックしなくていいよ。
0302デフォルトの名無しさんNGNG
>>299
>>295
0303デフォルトの名無しさんNGNG
分けられんわけじゃないがカッコ悪い。
for (;;) {
str = ...
if (str) break;
}
0304デフォルトの名無しさんNGNG
>>298
どういうときですか?
0305デフォルトの名無しさんNGNG
>>277=279頭が固い人?「使うな」なんて一言も言ってないが。何もしないら、if(!isalnum(c))って書くに決まてるだろ。アホか(藁
0306デフォルトの名無しさんNGNG
>>301
mallocが失敗するような状態で、そのあとどうするの?
テヌキアプリならセグフォルで落しちゃった方がよくない?

というのは、ありえるかも。
0307デフォルトの名無しさんNGNG
>>303
慣れの問題。
0308デフォルトの名無しさんNGNG
>>305
必死に反論考えて
辿り着いた答えがそれですか?(W
0309デフォルトの名無しさんNGNG
>>298
whileでやってよい書き方が、
なぜifではダメなんだ?

whileでも、同じコードを2回書けば
必ず分けられるじゃないか。
条件の中で (変数=値)== 値
が汚いというなら、徹底しろよ。
まったく不統一な頭したやつだな。
0310デフォルトの名無しさんNGNG
>>305
素直に「降参」って言えば良いのに。
0311一番叩かれる意見NGNG
>>306
てぬきというか、自分だけしか使わないようなものなら多分失敗しない。
0312デフォルトの名無しさんNGNG
>>309
同じコードを2回書くのは悪いプログラミングの例だが?
0313デフォルトの名無しさんNGNG
>>308
必死に反論考えて
辿り着いた答えがそれですか(W
0314デフォルトの名無しさんNGNG
変数=値
変数 == 値
でいいだろが。
0315デフォルトの名無しさんNGNG
>>302
else {
 if ...
 else {
  if ...
とネストを深くしていくのかよ。
変わってるねー。
0316デフォルトの名無しさんNGNG
そういえば、いままでmallocがNULL返してきたことないな。
チェックしてても落ちる。
0317デフォルトの名無しさんNGNG
>>306
mallocが失敗してもすぐ落ちるわけじゃないし、ある程度不正な状態で
コードが進んで何か悪さをするより自分で落としたほうがいい。
0318デフォルトの名無しさんNGNG
>>315
てかそんな状況ないし
0319デフォルトの名無しさんNGNG
>>317
mallocしたらすぐにその領域を使わない?
NULLにアクセスしたら落ちることが多いと思うけど
0320デフォルトの名無しさんNGNG
glib の malloc
(g_malloc()だっけ?)
は malloc に失敗したら abort するようになってるよね。確か。
0321デフォルトの名無しさんNGNG
>>318
argc>2ならエラー
==2なら、argv[1]をファイル名としてファイルを開く。
開けなければ"default.txt"を開く。
開けなければエラー。

って、あんたのやり方だとどんどんネストが深くなるが?
0322デフォルトの名無しさんNGNG
>>319
たまーに、仮想アドレス0x0周辺を書き換えておいてノホホーンと
さきにいくような処理系とOSが…あるのかな?
0323デフォルトの名無しさんNGNG
>>320
mallocがそんなことしちゃったら規格はずれになっちゃうよ。
g_mallocだと思う。そんな関数しらないけど。
0324デフォルトの名無しさんNGNG
>>322
DOSとか。
0325デフォルトの名無しさんNGNG
>>323
glibc じゃないよ。glib ね。Gtk+ に使われてるやつ
0326デフォルトの名無しさんNGNG
getsもあんな危険な関数だけど、標準ライブラリ関数だから仕様を勝手に変えたりライブラリから外すわけにはゆかないんだよね。
0327デフォルトの名無しさんNGNG
>>325
じゃあ多分g_mallocだと思うよ。
標準のmallocとかぶっちゃうし。
0328デフォルトの名無しさんNGNG
>>322
AIXとか。
0329デフォルトの名無しさんNGNG
しかしmallocがNULLを返したからと言って大した対処もできないならg_mallocのようにするのも良いかと思う。
0330デフォルトの名無しさんNGNG
>>321
たかだかネスト2つだと思うんだけど、どういうやり方してんの?
0331デフォルトの名無しさんNGNG
>>330
脳内ネストの事だろ、きっと。
0332319NGNG
結構あるんだな・・・
まあ自分専用のプログラムでもないかぎりは、mallocの戻り値チェックは鉄則だと思うけどね。
0333デフォルトの名無しさんNGNG
>>329
よく「mallocできないと落ちる」ラッパー作るよね。
「mallocできないとエラーハンドラ呼び出す。
ハンドラは変えられる。デフォルトはabort。」
としてくれると良いかも。
0334デフォルトの名無しさんNGNG
>>330
んで、そもそもなんで2つに分けたいか聞きたいんだけど。
単に「わかりにくい」とかいう主観的なのは却下ね。
033532NGNG
See you again!!
0336デフォルトの名無しさんNGNG
わかりにくい以外に理由がいるか?
0337デフォルトの名無しさんNGNG
>>333
#include <stdlib.h>
void *g_malloc(size_t size)
{
void *p;
p=malloc(size);
if(!p) abort();
return p;
}

こんな感じ?
0338デフォルトの名無しさんNGNG
>>329
たいした対処できないって言ってもメモリがありませんぐらいは言えるだろうから、
だまって落ちるよりはいいと思うぞ。
0339デフォルトの名無しさんNGNG
>>334
ネタですか?主観以外の何物でも無いと思うが。
0340デフォルトの名無しさんNGNG
>>334
分かりにくくてもいいなら全部一行で書けよ。
0341337NGNG
stddef.hも必要か・・・
0342デフォルトの名無しさんNGNG
>>334
大多数の人間の主観=客観
0343デフォルトの名無しさんNGNG
>>337
エラーメッセージくらいは......
まメモリ不足でメッセージ出力すらできないかもしんないけど
0344デフォルトの名無しさんNGNG
どう分りにくいわけ?
条件の中の副作用というのがダメなら
if (fgets(...) != NULL)
もダメだろ?

というか、そもそもfopen自体が副作用そのものだよな?
0345デフォルトの名無しさんNGNG
>>344
お、おまい
if (fgets(...) != NULL)
こんなことしてんのか?おもしろすぎ(W
0346デフォルトの名無しさんNGNG
君らは
while ((c = getchar() != EOF)
も「分りにくいけどしょうがないなあ…」
としぶしぶ書いてるわけ?
0347デフォルトの名無しさんNGNG
main関数にいる時にエラーメッセージを出力して終了する場合、
return fprintf(stderr,"エラーです。\n");
と書くのはアフォ?fprintfがint返すからこう書いているんだけど・・・
やっぱり1を返すべき?
0348デフォルトの名無しさんNGNG
>>346
わかりにくい。
実際におまいが間違えてる(w
0349デフォルトの名無しさんNGNG
>>345
え、EOFだとNULLが返るだろ?
(つか、それ以外にEOFの判別はできないはずだが)
0350252NGNG
結局 32 が何をしたかったのかわからなかった…
0351デフォルトの名無しさんNGNG
g_mallocの一部

p = (gpointer) malloc (size);
if (!p)
g_error ("could not allocate %ld bytes", size);

ちゃんとメッセージは返すらしい。

0352デフォルトの名無しさんNGNG
NULL = FALSE = '\0' = 0
故に
p=malloc(size)
if(!p) = if(p == FALSE) = if(p == '\0')
0353デフォルトの名無しさんNGNG
>>348
ははあ。
そんな我慢していやいや使うくらいなら
はじめからC使うなよ(w
0354デフォルトの名無しさんNGNG
>>353
間違っているのは確かだろ(笑)
0355デフォルトの名無しさんNGNG
>>353
便利だと思ってるし、好きだよ。
でも if まですることはない。
0356デフォルトの名無しさんNGNG
>>352
いや、まあ、それはそうだが。
だから何?
0357デフォルトの名無しさんNGNG
>>353
わかりにくいから細心の注意を払ってコーディングしなければ
おまいのような誤ちを犯すことになる
0358デフォルトの名無しさんNGNG
>>355
矛盾しまくってるジャン(w
0359デフォルトの名無しさんNGNG
>>345
だ〜か〜ら、もうネタはいいって言ってるだろうが!
0360デフォルトの名無しさんNGNG
>>356
オイオイ、FAQ嫁。
0361デフォルトの名無しさんNGNG
>>359
は?なんでオレなの?もしかしておまいも
if (fgets(...) != NULL)
とかしてんじゃねーだろーな?(w
0362デフォルトの名無しさんNGNG
>>357
意味不明
結局「しぶしぶ使う」わけ?
じゃあやめれば?
0363デフォルトの名無しさんNGNG
シンプル伊豆ベスト。

シンプルとは一行で書くことじゃない。
0364デフォルトの名無しさんNGNG
>>347は放置・・・問題外ってことか。
素直に
fprintf(stderr,"エラー\n");
return 1;
としよう。
0365デフォルトの名無しさんNGNG
>>361
貴方はどうするんでつか?
0366デフォルトの名無しさんNGNG
>>362
は?おまいは自分でわかりにくくないと主張しておきながら
間違えたんだろ?何?負け惜しみか?
0367デフォルトの名無しさんNGNG
>>365
if(fgets(...))でいいだろ。
0368デフォルトの名無しさんNGNG
>>365
if (fgets(...))
0369デフォルトの名無しさんNGNG
>>366
おまいは自分で分りにくいと主張しておきながら
whileでは使うんだろ?
まるきり矛盾じゃないか。
0370デフォルトの名無しさんNGNG
>>360
読みましたが何か?
0371デフォルトの名無しさんNGNG
>>369
わかりにくいから出来るだけ分けて書くようにする
それ以上のことは言ってないが?
0372デフォルトの名無しさんNGNG
>>371
ああ、しぶしぶ使うってことね。
了解。
0373デフォルトの名無しさんNGNG
>>369
便利だから・・・
0374デフォルトの名無しさんNGNG
以上、32以外は全部俺の書き込みですた。
0375デフォルトの名無しさんNGNG
>>367-368
冗談だろ(w

0376デフォルトの名無しさんNGNG
NULLやFALSEって0と見なしていいんですか?
0377デフォルトの名無しさんNGNG
>>375
ネタか?もう寝ろや
0378デフォルトの名無しさんNGNG
>>375
冗談じゃないが・・・
while(fgets(...))、for(...;fgets(...);...)もよく書く。
普通しないのか!?
0379デフォルトの名無しさんNGNG
>>373
便利だから使うっていうのは矛盾であることを否定したことにはならないのだが。
0380デフォルトの名無しさんNGNG
>>376
内部表現が0であるわけでも、値が等しいわけでもないが、
整数の0とポインタを比較するときは0はnull pointerとみなされる。
また、ifやwhileの条件ではnull pointerは偽となる。
0381デフォルトの名無しさんNGNG
>>376
だからFAQ嫁って。
0382デフォルトの名無しさんNGNG
ごめん、いままで#42の板が無いもんだとばかり思って新スレ立てかけたよ。
センスの無いスレ名だな。
0383デフォルトの名無しさんNGNG
>>367-368
ワラタ
おまえらちょっと何行かコード書いてみろよ。
fp,buf使ってファイル読み込んで内容を表示するコードをさ。
0384デフォルトの名無しさんNGNG
ifのやつは出すでしょう。
0385デフォルトの名無しさんNGNG
>>383
while ( fgets(buf, BUFLEN, fp) ) printf( "%s", buf );
0386デフォルトの名無しさんNGNG
ifやwhileの条件で「0以外は偽」「null pointer以外は偽」を
利用するのは、分りやすいとはいえない。
条件には、
・真偽値として使う変数
・比較演算子の結果
のみを使うのが分りやすい。
while (i--) なんてのは最低だ。
0387デフォルトの名無しさんNGNG
>>385
スッキリ見やすいですね。
0388デフォルトの名無しさんNGNG
for (i=BUFLEN; --i; )
0389デフォルトの名無しさんNGNG
>>386
>>ifやwhileの条件で「0以外は偽」「null pointer以外は偽」を
マジ頭大丈夫か?
0390デフォルトの名無しさんNGNG
真だろ。
0391デフォルトの名無しさんNGNG
>>386
おおむね賛成だが、論理式としては
・真偽値を返す関数
・!論理式
もありだろー。
0392デフォルトの名無しさんNGNG
>>389
うん。まちがえた。
0393デフォルトの名無しさんNGNG
>>381
何かあったらすぐFAQ読めって、お前はFAQの回し者か?
0394デフォルトの名無しさんNGNG
>>while (i--) なんてのは最低だ。
それをぱっと見て、例え仕様を知らなくても、なにが脱出条件なのか
すぐに見当がつかないような「あほ」がPGなんかやってるか?
0395デフォルトの名無しさんNGNG
>>385
うわ。()の内側に空白あけてることからも分る通り、
あまりにもDQNなコード...
0396デフォルトの名無しさんNGNG
while (fgets(buf, BUFLEN, fp)) printf("%s", buf);
0397デフォルトの名無しさんNGNG
>>394
わかりやすさの話をしてるんだが。
0398デフォルトの名無しさんNGNG
>>395
うわ。括弧を全角で書いていることからも分かる通り、
あまりにもDQNな奴...
0399デフォルトの名無しさんNGNG
>>397
十分わかりやすいぞ
0400デフォルトの名無しさんNGNG
>>394
自分で分かりにくいと思っているからそういうコメントになるわけだが。
やっぱり「なにが脱出条件なのか すぐに見当がつかないような」コードなんだね。
0401デフォルトの名無しさんNGNG
>>397
だから、それを「わかりにくい」と思うような人間が
PGなんかやってるのかよ・・・世も末だなオイ・・・
0402デフォルトの名無しさんNGNG
fgetsは「真か偽を返す関数」だよね?
0403デフォルトの名無しさんNGNG
>>395
ダメか?見易いと思うんだが。
てか Gtk+ のソース読んでたことあるから
染み付いちゃったんだよね
0404デフォルトの名無しさんNGNG
if (fgets(...))
がわかりやすいなら、同じ理屈で
if (!(fp = fopen(...)))
も分りやすいことになるね。
0405デフォルトの名無しさんNGNG
>>402
ポインタです。
0406デフォルトの名無しさんNGNG
>>405
ポインタも「真」または「偽」だよね?
0407デフォルトの名無しさんNGNG
fp = fopen(...);
if (!fp)
のほうがいい。
0408デフォルトの名無しさんNGNG
>>404
当然だ。
どっちもわかりやすい。
0409デフォルトの名無しさんNGNG
>>404
だからそれは2行に分けれるだろーが
頭悪過ぎ
0410デフォルトの名無しさんNGNG
>>407
きみは
result = fgets(...)
if (result)
と書くのかね。
0411デフォルトの名無しさんNGNG
>>410
ぜったいこいつアホだ
0412デフォルトの名無しさんNGNG
>>409
>>410 のように分けれるよ。
0413デフォルトの名無しさんNGNG
>>410
わざわざ変数をつかうことはない。
0414デフォルトの名無しさんNGNG
おい、おまえら。コーディングスタイルについて論争する糞スレは他にあるだろう。
わざわざここでするなよ。
0415デフォルトの名無しさんNGNG
>>409
矛盾が明らかになりました(激藁
0416デフォルトの名無しさんNGNG
>>414
>>1がむかつくからさっさと終了したいんです。
0417デフォルトの名無しさんNGNG
>>413
分りやすくなるなら、それくらいやるべきだろ。
もー矛盾しまくり。
0418デフォルトの名無しさんNGNG
さっきから屁理屈こねてるだけじゃん?何こいつら
二人いるみたいだが
0419デフォルトの名無しさんNGNG
>>418
あんたは何人いるの?
0420デフォルトの名無しさんNGNG
if(!(fp=fopen(...)))は括弧が多くてみづらいってことじゃないの?
0421デフォルトの名無しさんNGNG
>>420
そんな頭悪いレベルの話なの?
0422デフォルトの名無しさんNGNG
>>417
じゃおまいはこう書け
if (!(len = strlen(str), buf = (char *)malloc(len+1)))
0423デフォルトの名無しさんNGNG
たいてい負けると「屁理屈だ」とか捨てゼリフが出てくるな(w
0424デフォルトの名無しさんNGNG
>>422
ワラタ
0425デフォルトの名無しさんNGNG
buf = (char *)malloc(strlen(str)+1);
if (!buf)
0426デフォルトの名無しさんNGNG
>>421
頭が悪いのはお前。
0427デフォルトの名無しさんNGNG
>>422
頭わるっ!
俺は「何でも一緒にしたい」んじゃないの。
「代入と、その値の利用をいっしょにしても良い」と言ってるの。
strlenをifにいれる意味がどこにあるんだよタワケ(藁
0428デフォルトの名無しさんNGNG
>>423
すでに>>421が捨てゼリフを吐いています(w
0429デフォルトの名無しさんNGNG
>>427
if ではやらない方が分かりやすくない?
0430デフォルトの名無しさんNGNG
>>416
ならオッケー。
0431デフォルトの名無しさんNGNG
>>429
でもfgetsだって代入だよ?
0432デフォルトの名無しさんNGNG
代入と、その値の利用をいっしょにするのキモイ
0433デフォルトの名無しさんNGNG
>>427
わりぃ。じゃこうだな
if(!(buf = (char *)malloc((len = strlen(str))+1))
0434デフォルトの名無しさんNGNG
>>432
while ((c = getchar()) != EOF)
もなしか?
0435デフォルトの名無しさんNGNG
>>432
でもfgetsだって代入だよ?

0436デフォルトの名無しさんNGNG
このスレを終わらせたいだけならいいけど本当に熱くなってる奴は↓行ってくれな。

宗教戦争
http://pc3.2ch.net/test/read.cgi/tech/1031355713/
0437デフォルトの名無しさんNGNG
>>433
そのlenを何に使うんだ?
0438デフォルトの名無しさんNGNG
>>433
いやstrdup使うけど(w
0439デフォルトの名無しさんNGNG
>>437
memcpy()
0440デフォルトの名無しさんNGNG
for (i=0; i < len; i++)
0441デフォルトの名無しさんNGNG
…たしかにfgetsも代入だな。
俺の負けだ! もう寝る!
0442デフォルトの名無しさんNGNG
それこそstrcpyを使った方がわかりやすいんじゃ・・・
0443デフォルトの名無しさんNGNG
>>434
そうやっていつも極論を出す。
やる必要があるときとやらなくてもいい時を分けて考えろ。
0444デフォルトの名無しさんNGNG
>>442
スピード命
0445デフォルトの名無しさんNGNG
>>444
解散した。
0446デフォルトの名無しさんNGNG
ヒトエちゃんてどこ行ったんだろうな
0447デフォルトの名無しさんNGNG
gtk+触ってたって人、まだいる?
gtk_signal_connect(GTK_OBJECT(some_widget), "some_event",
(GtkSignalFunc)callback, (gpointer)data);

この糞長い関数を一行(80列)で書くエレガントな方法ってあるかい?
あったら烈しく教えて欲しいんだが。
0448デフォルトの名無しさんNGNG
なつかしすぎ
0449デフォルトの名無しさんNGNG
>>447
ないな。なんで2行に分けるのイヤなの?
0450デフォルトの名無しさんNGNG
#define GSC gtk_signal_connect
#define GO GTK_OBJECT
#define GSF GtkSignalFunc
#define GP gpointer
0451デフォルトの名無しさんNGNG
>>447
まだ一行で書くとエレガントだと思っている奴がいるのか。
0452デフォルトの名無しさんNGNG
すまん。こうだったな
if(!(buf=(char *)malloc((len=strlen(fgets(str,MAX_LEN,fp)?str:""))+1)))
0453デフォルトの名無しさんNGNG
>>447
コーディングの意図が明確に即時にトレースできることが重要で、
見た目の長さは関係無いと思うが。
>>450みたいな真似をして、あとから見た奴がワケワカ状態になる
ほうがよっぽどとんでもないよね。
0454デフォルトの名無しさんNGNG
今起きたところなんだが、真スレのタイトルに涙。
ところで、直前までの論争は

fp = fopen(...);
if(!fp)

は OK だが

result = fgets(...);
if(result)

はクソという結論でよろしいか?
0455デフォルトの名無しさんNGNG
>>451
7行で書くとエレガントだと思っている奴はいます。
0456デフォルトの名無しさんNGNG
>>454
そんなもんどっちでもいい
0457デフォルトの名無しさんNGNG
>>454
さっきからいるくせに
0458デフォルトの名無しさんNGNG
>>454
result が if の判定にしか使われなかったらな。
0459デフォルトの名無しさんNGNG
>>454
result = fgets(...);
if(result)
これがクソなのは間違いない
0460デフォルトの名無しさんNGNG
ま、どうでもいいから早くこのスレ埋めちまおうや
0461デフォルトの名無しさんNGNG
>>453
うーん、そりゃそうだな。
しょうがないか。
0462デフォルトの名無しさんNGNG
>>460
だったらスペースでも書き込め。
0463デフォルトの名無しさんNGNG
gtk_signal_connect(GTK_OBJECT(some_widget),
          "some_event",
          (GtkSignalFunc)callback,
          (gpointer)data);
0464デフォルトの名無しさんNGNG

0465デフォルトの名無しさんNGNG
>>462
アフォ
0466デフォルトの名無しさんNGNG
>>463
ちなみに
GTK_SIGNAL_FUNC(callback)
のほうが良かったかと
0467デフォルトの名無しさんNGNG


0468デフォルトの名無しさんNGNG
>>465
それでもなんでもいい。どんどん書き込め
0469デフォルトの名無しさんNGNG
 
0470デフォルトの名無しさんNGNG



0471デフォルトの名無しさんNGNG




0472デフォルトの名無しさんNGNG
あーあ。
0473デフォルトの名無しさんNGNG
なるほど
議論に負けた連中は
こうやって
ログを流そうとするわけか!
0474デフォルトの名無しさんNGNG
Win32 SDK 触ってたって人、まだいる?
hWnd = CreateWindowEx( WS_EX_ACCEPTFILES | WS_EX_APPWINDOW | WS_EX_WINDOWEDGE, MainWindowClassName, MyName,
WS_OVERLAPPEDWINDOW | WS_VISIBLE | WS_CLIPCHILDREN, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
HWND_DESKTOP, NULL, hInstance, &Parameter);

この糞長い関数を一行(80列)で書くエレガントな方法ってあるかい?
あったら烈しく教えて欲しいんだが。
0475デフォルトの名無しさんNGNG

0476デフォルトの名無しさんNGNG
>>474
そこまで長いとfopenみたいなモード指定方法の方がいいかなーと思ってしまう(笑)
0477デフォルトの名無しさんNGNG
>>474
ワラタ
0478デフォルトの名無しさんNGNG
>>473
スペース書けといわれたから書いているだけですが?
0479デフォルトの名無しさんNGNG
>>478
あっそ
0480デフォルトの名無しさんNGNG
>>478
はいはい、悔しかったんだね
よしよし(・∀・)
0481デフォルトの名無しさんNGNG
>>479
うん。そう(^^;
0482デフォルトの名無しさんNGNG
>>474
第一引数は整数か?
論理和とった値を直に書け。

決してエレガントじゃないが。
0483482NGNG
それでも80文字には収まらないなきっと。。
0484デフォルトの名無しさんNGNG
一行に一引数と相場は決まってる<CreateWindowEx
0485デフォルトの名無しさんNGNG
>>474
しかし、プロパティ設定まで全部1関数なのね・・・
CでGUIって大変ね。setsockoptみたいに後から種類ごとに
設定できると、まだ分かりやすそうなきがするね。今更どう
にもならんけど。
0486デフォルトの名無しさんNGNG
#define CWE \
hWnd = CreateWindowEx( WS_EX_ACCEPTFILES | WS_EX_APPWINDOW | WS_EX_WINDOWEDGE, MainWindowClassName, MyName,\
WS_OVERLAPPEDWINDOW | WS_VISIBLE | WS_CLIPCHILDREN, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,\
HWND_DESKTOP, NULL, hInstance, &Parameter)
0487デフォルトの名無しさんNGNG
こう書けばいいだけのことだろ。
hWnd = CreateWindowEx(
 WS_EX_ACCEPTFILES | WS_EX_APPWINDOW | WS_EX_WINDOWEDGE,
 MainWindowClassName,
 MyName,
 WS_OVERLAPPEDWINDOW | WS_VISIBLE | WS_CLIPCHILDREN,
 CW_USEDEFAULT,
 CW_USEDEFAULT,
 CW_USEDEFAULT,
 CW_USEDEFAULT,
 HWND_DESKTOP,
 NULL,
 hInstance,
 &Parameter);
0488474NGNG
スペース除いて 241 桁か・・・。

結局、484 の方法しかないな。
ただ、座標指定 (4 つの CW_USEDEFAULT) は 1 行で書いた方がいいよな。

486 は #define 自体にまんまの実装を書いている事が非常に無意味だ。
0489デフォルトの名無しさんNGNG
これだけ長いと逆に争うまでもない罠
0490デフォルトの名無しさんNGNG
>>485
違う。
先に RegisterWindowEx() でウィンドウの基本的なタイプを決める。
その属性指定が、これまたメンバだらけの構造体。
0491デフォルトの名無しさんNGNG
一行で書けばいいだろ。今時横スクロールできないエディタ使っているわけあるまいし。
0492485NGNG
>>490
ハハァ・・・
Winアプリ作る時は、C#か、JavaでSWTつかうことにしよっと。
0493デフォルトの名無しさんNGNG
>>492
VBを使えよ
0494デフォルトの名無しさんNGNG
>>491
アフォハケーン
0495デフォルトの名無しさんNGNG
そらアフォも出てくるわ
0496デフォルトの名無しさんNGNG
>>492
おぅおぅ。所詮その程度のレベルだ好きにしろ。
0497デフォルトの名無しさんNGNG
7 行プログラミングの連中がテロ起こしそうな API だよな。
0498デフォルトの名無しさんNGNG
インデントはいくつが正常でつか?
0499デフォルトの名無しさんNGNG
>>498
それはコーディングスタイルの話だから、何が正しいというのは無い。
漏れは 4 桁。
0500デフォルトの名無しさんNGNG
折り返し地点
0501デフォルトの名無しさんNGNG
俺は8。
0502デフォルトの名無しさんNGNG
GOAL!
0503デフォルトの名無しさんNGNG
目指せ今日中に1000。
0504デフォルトの名無しさんNGNG
燃料は無いか?
0505デフォルトの名無しさんNGNG
やっぱ8だよね
0506デフォルトの名無しさんNGNG
さっさとこんなスレ荒らして終わりにしちまおうぜ
0507デフォルトの名無しさんNGNG
GNUは2だったかな。
0508デフォルトの名無しさんNGNG
そんなにいやなら次スレ作っちゃえば?
0509デフォルトの名無しさんNGNG
0 は止めて欲すぃ
0510デフォルトの名無しさんNGNG
>>507
ウソつけハゲ
0511デフォルトの名無しさんNGNG
>>499
今までもコーディングスタイルの話なんだから固いこというな
0512デフォルトの名無しさんNGNG
次スレのタイトルとテンプレートの話でもするか?
0513デフォルトの名無しさんNGNG
>>506
議論に負けたからって荒らしてログを流そうとすんなよ。
0514デフォルトの名無しさんNGNG
インデントは常に"\t"ですが、まずいですか?
0515デフォルトの名無しさんNGNG
キタ━━━━━(゚∀゚)━━━━━!?

>>511
499 は、「正しいというのは無い」 とは逝ったが、だから議論はやめろとは
逝ってない。
0516デフォルトの名無しさんNGNG
>>514
まずい
エディタによって変わるから
0517デフォルトの名無しさんNGNG
>>515
寝惚けんなハグェ
0518デフォルトの名無しさんNGNG
      \∧_ヘ     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ,,、,、,,, / \〇ノゝ∩ <  1098取り合戦、いくぞゴルァ!!    ,,、,、,,,
    /三√´д`) /   \____________  ,,、,、,,,
     /三/| ゚U゚|\      ,,、,、,,,                       ,,、,、,,,
 ,,、,、,,, U (:::::::::::)  ,,、,、,,,     \エーーーーーーーッ!?/
      //三/|三|\     
      ∪  ∪       (´д`)´д`(´д`)´д`(´д`)´д`(´д`)´д`(´д`)
 ,,、,、,,,       ,,、,、,,,      ,,、,、,,,     ,,、,、,,,        ,,、,、,,,
      ,,、,、,,,      (´д`)´д`(´д`)´д`(´д`)´д`(´д`)´д`(´д`)´д`(´д`)

http://big.freett.com/scheme_a/num1000.swf
0519デフォルトの名無しさんNGNG
>>512
前スレの最後の方でもう決まったよ
0520デフォルトの名無しさんNGNG
スペースなんかにしたら容量増えるじゃん。
0521デフォルトの名無しさんNGNG
>>516
エディタの設定で好きに変えられるから逆に良い。
0522デフォルトの名無しさんNGNG
>>516
別にエディタでどう見るかは、見る人が好きにエディタの
設定かえればいいだけちゃう?
データとして1バイトですむので、多少はコードサイズ減るし…
0523デフォルトの名無しさんNGNG
>>521
ずれるじゃん。てかやったことないだろ
0524デフォルトの名無しさんNGNG
>>523
なにが?
0525デフォルトの名無しさんNGNG
>>517
最後の疑問符が見えませんか?
だとするとあなたは、
if(!flag) の ! も見落とすかも知れませんね。
0526デフォルトの名無しさんNGNG
もれは書くときは tab 使うけど
人に渡したりするときは expand でスペースに変換する。
0527デフォルトの名無しさんNGNG
>>524
普通ソースコードはタブ幅決め打ちで書くんだから、作者の意図しないタブ幅に
したらずれるって話だろ。
0528デフォルトの名無しさんNGNG
エディタの設定でタブを自動的にスペースに置き換えるようにしている。
ちなみにサイズは8
0529デフォルトの名無しさんNGNG
でもコード編集中はタブだな。
スペースだと、インデント上げる時に必要なバックスペースキーが多い。
0530デフォルトの名無しさんNGNG
>>527
"\t"が4か8かによって、見え方が異常に変わってしまうような
入れ方しないよ。
インデントは常に、1タブ、2タブ、3タブ・・・であって
1タブ、1タブ+4スペース、2タブ・・・などというアホな事はしない。
あんたやってるのか?たまにそういうソース見るけど。
0531デフォルトの名無しさんNGNG
今日はコーディングスタイルの日か
0532デフォルトの名無しさんNGNG
TABで渡してくれたほうが都合がいいが
どうせ整形ツールつかうからどうでもいい

整形ツール使って元と全然違うスタイルにしてしまうのはアリ?
0533デフォルトの名無しさんNGNG
>>530
そういうことじゃないよ
おまえ他のエディタで見たりしたことないんだろ?
0534デフォルトの名無しさんNGNG
プロポーショナルフォント使っていたら崩れちゃう
0535デフォルトの名無しさんNGNG
人に渡すなら書く前に統一しとけばええやん。
0536デフォルトの名無しさんNGNG
>>534
え?プロポーショナルフォント!?なんで?
0537527NGNG
>>530
漏れはしないけど、あんたの言う通りそういうソースは結構あるだろ。
0538デフォルトの名無しさんNGNG
なんで今日はネタにもいちいちマジレスが返るんだろう
0539デフォルトの名無しさんNGNG
>>536
相手がぷろぽ使っていたら崩れちゃうってこと。
0540デフォルトの名無しさんNGNG
VB みたいに、スペースで桁揃えできない奴はいっそプロポーショナルのが見やすいが、
C/C++ では固定長だな。
0541デフォルトの名無しさんNGNG
>>538
・・・ネタですか?
0542デフォルトの名無しさんNGNG
>>539
そりゃ相手が悪い
0543デフォルトの名無しさんNGNG
>>539
相手がつかってるかもしれないのか?相手ってどんな奴?
0544デフォルトの名無しさんNGNG
>>538
ネタにマジレス。飢えてるから。
0545デフォルトの名無しさんNGNG
インデントがタブのままソースを渡すやつは白痴
0546デフォルトの名無しさんNGNG
>>542
うん。タブにしようが空白にしようが崩れることはあるって言いたいだけ。

>>543
ソース見る奴
0547デフォルトの名無しさんNGNG
タブのまま渡されたソースを扱えない香具師は白痴
0548デフォルトの名無しさんNGNG
>>546
プログラムのソースコードは固定幅フォントで見る、なんてのは
大前提だろ
0549デフォルトの名無しさんNGNG
海原雄山はプログラマに向いているかも知れない
0550デフォルトの名無しさんNGNG
>>548
まあそうだけどね。
というかテキストエディタは固定長で使うのが一般的だよね。
0551デフォルトの名無しさんNGNG
話すことも尽きたからあずまんが大王の話でもしねぇ?
0552デフォルトの名無しさんNGNG
>>549
向いてない
0553デフォルトの名無しさんNGNG
>>551
C と関係無い話はよそでやってください
おながいします
0554デフォルトの名無しさんNGNG
>>553
わかってるねんでぇ、わかってるねんでぇ、バカにしたらあかん。
0555デフォルトの名無しさんNGNG
>>553
そんなこと言っていたらこの糞スレをうめられねーだろ
0556デフォルトの名無しさんNGNG
>>552
何でだよ
0557デフォルトの名無しさんNGNG
タブはタブー
なんちゃって(^^)
0558デフォルトの名無しさんNGNG
正直インデント幅の話もスレ違いだけどな。でも固いこというな。
ここはそういうスレなんだ。スレタイをつけた>>1が何もかも悪い。
0559デフォルトの名無しさんNGNG
あずまんが大王はおもしろいとは思わんけどなあ。
0560デフォルトの名無しさんNGNG
>>556
自分に厳しい芸術家がコード書いたら永遠に完成しないだろうよ。
いい加減だから納品できるのさ〜。
0561デフォルトの名無しさんNGNG
いいペースだ、みんなんばれ。
ただし、じゅもんはつかうな。
0562デフォルトの名無しさんNGNG
あずまんが読んだ事無いから知らん
0563デフォルトの名無しさんNGNG
#define BEGIN {
#define END }
とか書き出してフランス料理にもPascal風ソースをかければ美味いとか
言い出すんじゃないだろうか。
0564デフォルトの名無しさんNGNG
次のスレ題
「士郎!甘いわ!〜海原雄山至高のCプログラム〜C言語の腕はここで磨け!-相談にも乗るYO!-43」
0565デフォルトの名無しさんNGNG
おまいら海原雄山が好きなんだな
0566デフォルトの名無しさんNGNG
ERROR:サブジェクトが長すぎます。
0567デフォルトの名無しさんNGNG
俺も読んだことはないがアニメで見た。
正直アニメをみてかわいいと思ったのはこれが初めてだ。
0568デフォルトの名無しさんNGNG
次スレのタイトルは 565 でよろしいか?
0569デフォルトの名無しさんNGNG
「美C倶楽部」
0570デフォルトの名無しさんNGNG
>>568
いいよ。
〜に聞けはもううんざり。
0571デフォルトの名無しさんNGNG
「下司どもにCを与えるな〜海原雄山至高のC」
0572549NGNG
漏れのせいでとんでもない事になったらどうしよう・・・(;´Д`)
0573570NGNG
センスがないとはいわんが、もう飽きた
0574デフォルトの名無しさんNGNG
>>572
責任取れよ(w
0575デフォルトの名無しさんNGNG
テンプレは前スレで決まってる。伝統的に
http://pc3.2ch.net/test/read.cgi/tech/1036876790/972-
0576デフォルトの名無しさんNGNG
dat落ちしなければいいがな。
0577デフォルトの名無しさんNGNG
「C言語のことは漏前が答えろ!」
0578デフォルトの名無しさんNGNG
27 :デフォルトの名無しさん :02/11/10 06:40
きく、なんてややこしい言葉使うからダメなんだ
次から
「C言語のことなら朕に尋ねよ」
にしよう

28 :デフォルトの名無しさん :02/11/10 06:41
(・ロ・)ホ,('ロ')ホ--ッッ!!!… C言語質問スレ PartX

これがいい。

29 :デフォルトの名無しさん :02/11/10 06:43
つーか周りに合わせて、「C 相談室」 でいいやん。
元々のスレタイが、ビルジョブスの好き勝手で付けたものだし。

30 :デフォルトの名無しさん :02/11/10 06:46
「C (゚д゚)ウマ-」 「C (゚Д゚)ハァ?」 「C (・∀・)イイ!!」 「C ( ´,_ゝ`)フーン」 「C ヽ(´ー`)ノ ヤレヤレ」 「C (゚∀゚) アヒャ」

31 :デフォルトの名無しさん :02/11/10 06:47
いっそシンプルに「C」だけでいいんじゃない?

32 :デフォルトの名無しさん :02/11/10 06:48
見つけにくいだろ

33 :デフォルトの名無しさん :02/11/10 06:50
C, or not C. That's the question.

34 :デフォルトの名無しさん :02/11/10 06:59
「Cと、土曜深夜の愉快な仲間たち」
0579デフォルトの名無しさんNGNG
前スレ 975 の 27〜33 に 「// 待機中」 が抜けてるな。
つーか ANSI サポートするなら 「/* 待機中 */」 にしる。
0580デフォルトの名無しさんNGNG
あえてC99。つーか/**/だとちょっと一行が長くなる。
0581デフォルトの名無しさんNGNG
「(・ロ・)ホ,('ロ')ホ--ッッ!!!…」 ってな何かアホくさ過ぎる。
0582デフォルトの名無しさんNGNG
>>581
VB なんかとカブってるし
0583デフォルトの名無しさんNGNG
C言語なら俺に聞け日記。
0584デフォルトの名無しさんNGNG
「C 相談室」 でいいやん。
俺に聞けはまじで飽きた。
0585デフォルトの名無しさんNGNG
char* c[43];がCぽくていいじゃん。
0586デフォルトの名無しさんNGNG
「C言語なら独りでやれ!!」
0587デフォルトの名無しさんNGNG
場末の C
0588デフォルトの名無しさんNGNG
>>585
sかstrにしろよ。
0589588NGNG
ん?ポインタ配列か。
じゃあstrってのも変だな。
0590デフォルトの名無しさんNGNG
char const * const にしろよ。
0591デフォルトの名無しさんNGNG
>>588
スレタイで表したいのはあくまでも「C」の「何番目」のスレかということだ。
0592デフォルトの名無しさんNGNG
「if(!you_know(C))ask(me);」
0593588NGNG
>>591
そういうことか。
サパーリわからんかった。
つーかCスレ char* c[43];とか書くんじゃなくてchar* c[43];だけなのね・・
0594デフォルトの名無しさんNGNG
struct thread { char title[256]; char url[256]; } c[43];
0595デフォルトの名無しさんNGNG
でも結局俺に聞けになるんだよな。つまらん。
0596デフォルトの名無しさんNGNG
>>593
あ、いや、もちろん「C言語」とか「プログラミング言語C」とかつける。
じゃないと検索でヒットしにくいし。
0597デフォルトの名無しさんNGNG
あい。

char const * const * const a = 0, b;

b の型が何だか即答できる人!
0598デフォルトの名無しさんNGNG
革新的なことをすると叩かれる。
0599デフォルトの名無しさんNGNG
char
0600デフォルトの名無しさんNGNG
char const 型!
0601デフォルトの名無しさんNGNG
>>597
すまん。後にしてくれ。
0602デフォルトの名無しさんNGNG
「C言語相談室日記〜自分でやれ」
0603デフォルトの名無しさんNGNG
600 が正解で終了。
0604デフォルトの名無しさんNGNG
>>597
variant
0605デフォルトの名無しさんNGNG
次スレマダー?
0606デフォルトの名無しさんNGNG
http://pc3.2ch.net/test/read.cgi/tech/1037101156/l50
0607デフォルトの名無しさんNGNG
じゃあみんなのアイデアを総合して、
 
 あずまんが大王のC言語相談室 char* c[43];

で決まりだな、っと!
0608デフォルトの名無しさんNGNG
>>605
お前が立てろよ
0609デフォルトの名無しさんNGNG
C言語相談室 char* c[43]={"あずまんが大王"};
0610デフォルトの名無しさんNGNG
>>607
相談室ってやめようよ
あくまで出来るだけ自分で考えろって雰囲気を出しときたい
0611デフォルトの名無しさんNGNG
海原雄山
0612デフォルトの名無しさんNGNG
>>607
なんでポインタ配列なの?
できればcに*をくっつけてほしい。
0613デフォルトの名無しさんNGNG
>>610
おまえそれより先に訂正するところがあるだろ!!
0614デフォルトの名無しさんNGNG
>>610
それ言ったら俺に聞けもダメになるぞ。いいのか?
0615デフォルトの名無しさんNGNG
C言語相談室 char *c[43]={"あずまんが大王", "海原雄山"};
0616デフォルトの名無しさんNGNG
>>610
それ言ったら海原雄山もダメになるぞ。いいのか?
0617デフォルトの名無しさんNGNG
>>615
c[2] 以降が全部 NULL だな。
0618デフォルトの名無しさんNGNG
なるほど、これもいいかもしんない。
char *c[43]={"C言語のことは漏れに聞け"};
c[0]はちょうど余ってるし。
0619デフォルトの名無しさんNGNG
C言語美食倶楽部 char *c[43]={"あずまんが大王"};
0620デフォルトの名無しさんNGNG
タイトルは別として、618 のスタイルはいいかもな。
0621デフォルトの名無しさんNGNG
>>608
C言語図鑑 const char * const c[43]={"あずまんが大王", "海原雄山"};
0622デフォルトの名無しさんNGNG
>>619
C言語美食倶楽部はいいかも。
0623デフォルトの名無しさんNGNG
>>621
サブジェクト長制限に引っかかると思う。
0624デフォルトの名無しさんNGNG
const 長すぎ
0625デフォルトの名無しさんNGNG
c[1]以降は
http://pc3.2ch.net/test/read.cgi/tech/1036876790/975-976
みたく過去スレが入るので。
0626デフォルトの名無しさんNGNG
あくまであずまんが大王と海原雄山にこだわってるのがいいな
0627デフォルトの名無しさんNGNG
結局論争と電波で終わったか。
0628デフォルトの名無しさんNGNG
#define c const
c char * c c[43] = {...};
0629デフォルトの名無しさんNGNG
const consthar * const const[43] = {...};
0630デフォルトの名無しさんNGNG
>>627
お前が電波。
みんな真面目に議論しているだろうが。
0631デフォルトの名無しさんNGNG
>>630
電波=32
0632デフォルトの名無しさんNGNG
>>628
改行付きかい
0633デフォルトの名無しさんNGNG
>>629
んなアホな
0634デフォルトの名無しさんNGNG
「C言語のことは自分の胸に聞け!!!43」
0635デフォルトの名無しさんNGNG
>>618の初期化タイトルを考えることにしよう。
>>2はいつもどおりコンパイラのリンクで、>>3-4は>>625の過去スレ代入で。
0636デフォルトの名無しさんNGNG
>>635
別にいいけど、俺に聞けはやめてくれよ。
0637デフォルトの名無しさんNGNG
char *c[43]={"あずまんがC言語"};
0638デフォルトの名無しさんNGNG
【ダッコ】C言語はしぃに聞け!!【ダッコ】
0639デフォルトの名無しさんNGNG
俺に聞けか相談室以外に何がある?
あんまり長いと弾かれるし。
064032NGNG
なにが俺に聞けだよ。
お前ら馬鹿は聞いても答えねーじゃねーか。
0641デフォルトの名無しさんNGNG
char *c[43]={"暴走C言語特急"};
0642デフォルトの名無しさんNGNG
>>640
32はそんなに正常に会話できません
ニセモノバレバレ
0643デフォルトの名無しさんNGNG
>>637
俺はそれで全然問題ない。
0644デフォルトの名無しさんNGNG
>>32
まだ解いてなかったの?
0645デフォルトの名無しさんNGNG
電波キタ─wwヘ√レvv~(゚∀゚)─wwヘ√レvv~─ !!
0646デフォルトの名無しさんNGNG
char *c[43]={"ABC言語殺人事件"};
0647デフォルトの名無しさんNGNG
>>643
海原雄山がないぞ
0648デフォルトの名無しさんNGNG
char *c[43]={"あずまんが山岡C郎"};
0649デフォルトの名無しさんNGNG
>>648
もう何がなんだか・・・
0650デフォルトの名無しさんNGNG
strcpy(c+10, "海原雄山");
0651デフォルトの名無しさんNGNG
char *c[43]={}このスタイルは決まり?
0652デフォルトの名無しさんNGNG
訂正します。
char *c[43]={"あずまんが山岡C言語郎"};
0653デフォルトの名無しさんNGNG
>>651
ダサいから却下

#pragma 至高の未定義言語、C言語のスレ
0654デフォルトの名無しさんNGNG
>>651
うん。
0655デフォルトの名無しさんNGNG
char *c[43]={"C言語相談室(*^o^*)"};
0656デフォルトの名無しさんNGNG
C言語は俺以外に聞け。
0657デフォルトの名無しさんNGNG
>>656
ちょっといいと思ってしまった
0658デフォルトの名無しさんNGNG
>>651
それで逝こう。
653 は却下却下却下却下却下。
0659デフォルトの名無しさんNGNG
サブジェクト長は48文字までだとさ
BBS_SUBJECT_COUNT=48
0660デフォルトの名無しさんNGNG
>>651
それだと過去スレもうまく収まるからそれで。
0661デフォルトの名無しさんNGNG
"海原雄山C言語"[43]
0662デフォルトの名無しさんNGNG
Cを求めて三千里
0663デフォルトの名無しさんNGNG
検索用に「C言語」という単語も入れたい。
0664デフォルトの名無しさんNGNG
>>661
43って境界を越えているじゃねーか
0665デフォルトの名無しさんNGNG
>>655で決まり
0666デフォルトの名無しさんNGNG
(藤原)C言語診断室(組長)
0667デフォルトの名無しさんNGNG
俺達C言語連合[43]
0668デフォルトの名無しさんNGNG
C言語火葬場
0669デフォルトの名無しさんNGNG
Cで逝こう
0670デフォルトの名無しさんNGNG
C言語のことはリッチーに聞け!!!
0671デフォルトの名無しさんNGNG
教えるのはカーニハンの方がうまい
0672デフォルトの名無しさんNGNG
C言語楽々会話
0673デフォルトの名無しさんNGNG
  ∧_∧   
 ( ´∀`)< ぬるぽ
0674デフォルトの名無しさんNGNG
char s[43]="C言語は俺に聞け";
0675デフォルトの名無しさんNGNG
【駅前】N○VAでC言語会話!!【留学】
0676デフォルトの名無しさんNGNG
char *c[43]={"楽太郎のC言語"};
0677デフォルトの名無しさんNGNG
  ( ・∀・)   | | ガッ
 と    )    | |
   Y /ノ    人
    / )    <  >__Λ∩
  _/し' //. V`Д´)/ ←>>673
 (_フ彡        /
0678デフォルトの名無しさんNGNG
正直、聞けとか相談室とか入れないとただのネタスレだと思われる罠
0679デフォルトの名無しさんNGNG
char *c[43]={"C言語問注所"};
0680デフォルトの名無しさんNGNG
くだらねぇC言語の質問はここに書け
0681デフォルトの名無しさんNGNG
char *c[43] = {"C言語相談室"};
char *c[43] = {"C言語のことは漏れに聞け"};
のどっちかでいいじゃん。
0682デフォルトの名無しさんNGNG
【未定義】"C言語の質問・論争スレ"[43]
0683デフォルトの名無しさんNGNG
スレッド立てるまでもないC言語の質問はここで
0684デフォルトの名無しさんNGNG
【ネイティヴ】私がC人です。C言語のことなら何でも聞きなさい【スピーカー】
0685デフォルトの名無しさんNGNG
>>681
上がいい。
できれば(*^o^*)をつけて
0686デフォルトの名無しさんNGNG
>>678
1 のテンプレがまともなら平気だろう。
0687デフォルトの名無しさんNGNG
【未定義】char c="C言語の質問・論争スレ"[43]

0688デフォルトの名無しさんNGNG
(*^c^*)
0689デフォルトの名無しさんNGNG
ここは次スレのタイトルを考えて1000消費するスレになりました。
0690デフォルトの名無しさんNGNG
>>685
アホ臭いから却下却下却下却下却下。
0691デフォルトの名無しさんNGNG
>>687
コンパイルエラー
0692デフォルトの名無しさんNGNG
*("C言語の質問・論争スレ"+43)
0693デフォルトの名無しさんNGNG
>>690
じゃあ:)をつけて。
0694デフォルトの名無しさんNGNG
>>693
KY 氏と勘違いされるから下却下却下却下却下。
0695デフォルトの名無しさんNGNG
C言語(≧∇≦) ぶぁっはっはっ!!!
0696デフォルトの名無しさんNGNG
>>695
それいい!! 最高にうけた!!
決まり決まり決まり
決定決定決定
0697デフォルトの名無しさんNGNG
>>693
インターネット繋ぎたての DQN の匂いがするから下却下却下却下却下。
0698デフォルトの名無しさんNGNG
char *c[43] = {"真剣!C言語しゃべり場"};
0699デフォルトの名無しさんNGNG
697はDQN
0700デフォルトの名無しさんNGNG
700
0701デフォルトの名無しさんNGNG
正直スレタイなんかどうでもいい。
0702デフォルトの名無しさんNGNG
char *c[43] = {"必死!C言語ほら吹き場"};
0703デフォルトの名無しさんNGNG
どうでもよくないから執拗に>>1が叩かれたんだろ。
0704デフォルトの名無しさんNGNG
真剣!C言語しゃべり場 47期 ++DQN
0705デフォルトの名無しさんNGNG
いっそのことC言語のスレッドは今回で終わりにしてしまわない?
0706デフォルトの名無しさんNGNG
>>703
おまえらが粘着なだけ。
0707デフォルトの名無しさんNGNG
>>705
いずれにせよ新スレは誰かが立てる。
0708デフォルトの名無しさんNGNG
char *c[43] = {"粘着C言語テープ"};
0709デフォルトの名無しさんNGNG
706=1
0710デフォルトの名無しさんNGNG
>>705
あ〜 それもいいかも。どうせ同じ事の繰り返しなんだからな〜。
0711デフォルトの名無しさんNGNG
【今日の日は】C言語のことなら俺に聞け!!![最終回]【さようなら】
0712デフォルトの名無しさんNGNG
「必死!」っつーのはいいな。
0713デフォルトの名無しさんNGNG
新スレたっちゃったぞ・・・
0714デフォルトの名無しさんNGNG
機動言語Cダム
0715デフォルトの名無しさんNGNG
Cの質問はスレッド立てるまでもない・・・でやってくれれば論争も起きないと思うんだよね。
0716デフォルトの名無しさんNGNG
なんだあのクソいスレタイはーーーーーーー!?
0717デフォルトの名無しさんNGNG
とりあえず 1000 取り合戦場の AA 貼っといた。
0718デフォルトの名無しさんNGNG
ニセ次スレ削除依頼出して。
0719デフォルトの名無しさんNGNG
誰か>>681のどっちかで立てちゃってよ。俺は立てられないって怒られた・・・
今ある糞43スレは放置で。
0720デフォルトの名無しさんNGNG
>>1のテンプレに論争の邪魔をする質問厨への対応は未定義とする。と入れてほしかった。
0721デフォルトの名無しさんNGNG
>>719
タイトルに関係なく糞スレになると思うが・・・
どうせ論争ですぐに使い切ってしまうんだろう。
0722デフォルトの名無しさんNGNG
>>1のテンプレ
問題をちゃんと切り分けて、Cの話かそうでないか洗ってから質問してください。
というより、聞く前に一応 Web で検索してください。
コンパイラを探してるなら >>2 を見てください。

GUIとか、C標準でできない事の質問は使ってる開発環境のスレに行ってください。
ソース丸投げ、宿題、書籍 は専門の別スレがあるからそこへ行ってください。

上記を守らない書き込みをした場合、その結果は激しく未定義とします。

C FAQ 日本語訳
http://www.catnet.ne.jp/kouno/c_faq/c_faq.html
comp.lang.c FAQ(英語の原文)
http://www.eskimo.com/~scs/C-faq/top.html
Cプログラマ必読 ・プログラミング言語C(通称 K&R)
http://www.amazon.co.jp/exec/obidos/ASIN/4320026926/
推薦図書/必読書のためのスレッド PART6
http://pc3.2ch.net/test/read.cgi/tech/1033207156/


前スレ <42>
c[42] = "http://pc3.2ch.net/test/read.cgi/tech/1037101156/";
0723デフォルトの名無しさんNGNG
てかこのスレもまだ300レス近く残ってるのに
0724デフォルトの名無しさんNGNG
Cスレ分裂の予感
0725デフォルトの名無しさんNGNG
>>2のテンプレ

【コンパイラ】
gcc
http://gcc.gnu.org/

【Win32用の開発環境のみ。】
gcc-cygwin
http://www.redhat.com/software/tools/cygwin/
gcc-mingw
http://www.mingw.org
Digital Mars C++
http://www.digitalmars.com/
Open Watcom
http://www.openwatcom.com/
Borland C++ Compiler 5.5.1
http://www.borland.co.jp/cppbuilder/freecompiler/

【ライセンスや機能などに問題あり】
Microsot C/C++ 13.0.9466(VC.NET)
http://www.microsoft.com/japan/msdn/netframework/downloads/
LCC-Win32
http://www.cs.virginia.edu/~lcc-win32/
CINT
http://root.cern.ch/root/Cint.html
めじろ++98
http://www.vector.co.jp/soft/win95/prog/se075910.html
0726デフォルトの名無しさんNGNG
>>3のテンプレ

c[41] = "http://pc3.2ch.net/test/read.cgi/tech/1036876790/";
c[40] = "http://pc3.2ch.net/test/read.cgi/tech/1036673739/";
c[39] = "http://pc3.2ch.net/test/read.cgi/tech/1036409391/";
c[38] = "http://pc3.2ch.net/test/read.cgi/tech/1035729526/"; // 待機中
c[37] = "http://pc3.2ch.net/test/read.cgi/tech/1035623265/"; // 待機中
c[36] = "http://pc3.2ch.net/test/read.cgi/tech/1035211039/"; // 待機中
c[35] = "http://pc3.2ch.net/test/read.cgi/tech/1034337064/"; // 待機中
c[34] = "http://pc3.2ch.net/test/read.cgi/tech/1033240509/"; // 待機中
c[33] = "http://pc3.2ch.net/test/read.cgi/tech/1032606064/"; // 待機中
c[32] = "http://pc3.2ch.net/test/read.cgi/tech/1031905402/";
c[31] = "http://pc3.2ch.net/test/read.cgi/tech/1031340950/";
c[30] = "http://pc3.2ch.net/test/read.cgi/tech/1030786546/";
c[29] = "http://pc3.2ch.net/test/read.cgi/tech/1029605182/";
c[28] = "http://pc3.2ch.net/test/read.cgi/tech/1028495798/";
c[27] = "http://pc3.2ch.net/test/read.cgi/tech/1027160374/";
c[26] = "http://pc.2ch.net/tech/kako/1026/10260/1026048820.html";
c[25] = "http://pc.2ch.net/tech/kako/1024/10249/1024918442.html";
c[24] = "http://pc.2ch.net/tech/kako/1024/10240/1024033400.html";
c[23] = "http://pc.2ch.net/tech/kako/1022/10224/1022402165.html";
c[22] = "http://pc.2ch.net/tech/kako/1022/10224/1022402165.html";
c[21] = "http://pc.2ch.net/tech/kako/1022/10220/1022045622.html";
0727デフォルトの名無しさんNGNG
>>4のテンプレ

c[20] = "http://pc.2ch.net/tech/kako/1021/10214/1021459016.html";
c[19] = "http://pc.2ch.net/tech/kako/1020/10207/1020756993.html";
c[18] = "http://pc.2ch.net/tech/kako/1020/10202/1020260813.html";
c[17] = "http://pc.2ch.net/tech/kako/1019/10193/1019372139.html";
c[16] = "http://pc.2ch.net/tech/kako/1018/10184/1018453690.html";
c[15] = "http://pc.2ch.net/tech/kako/1016/10165/1016519243.html";
c[14] = "http://pc.2ch.net/tech/kako/1015/10152/1015286974.html";
c[13] = "http://pc.2ch.net/tech/kako/1013/10139/1013990673.html";
c[12] = "http://pc.2ch.net/tech/kako/1012/10123/1012348974.html";
c[11] = "http://pc.2ch.net/tech/kako/1009/10094/1009499565.html";
c[10] = "http://pc.2ch.net/tech/kako/1008/10083/1008300863.html";
c[9] = "http://pc.2ch.net/tech/kako/1007/10072/1007272267.html";
c[8] = "http://pc.2ch.net/tech/kako/1005/10058/1005811510.html";
c[7] = "http://pc.2ch.net/tech/kako/1005/10058/1005811510.html";
c[6] = "http://piza2.2ch.net/tech/kako/999/999617524.html";
c[5] = "http://piza2.2ch.net/tech/kako/994/994908590.html";
c[4] = "http://piza.2ch.net/tech/kako/992/992357382.html";
c[3] = "http://piza.2ch.net/tech/kako/989/989929288.html";
c[2] = "http://piza.2ch.net/tech/kako/979/979529893.html";
c[1] = "http://piza.2ch.net/tech/kako/967/967985026.html";
0728デフォルトの名無しさんNGNG
糞スレ削除依頼終了
0729デフォルトの名無しさんNGNG
1 のテンプレ、ですます調はカコワルイ
0730デフォルトの名無しさんNGNG
まともな削除理由書けるのか?
0731デフォルトの名無しさんNGNG
First off, I'd suggest printing out a copy of the GNU coding standards, and
NOT read it. Burn them, it's a great symbolic gesture.
0732デフォルトの名無しさんNGNG
>>32 (他)
str1=(int**)malloc(sizeof(int*)*i2)
はせめて
str1=malloc(sizeof(int*)*i2)
にしようよ。 C++ じゃあないんだから。
str1=malloc(sizeof *str1*i2)
とすればもっとクールだとおもうけど、
あんたらには難しすぎますか。
0733デフォルトの名無しさんNGNG
ニセ次スレ、博物館の様相を呈してきた。
ある意味保存版。
0734デフォルトの名無しさんNGNG
新スレが立ったみたいなのでこのスレは終了ね。
0735デフォルトの名無しさんNGNG
>>734
アフォですか?
0736デフォルトの名無しさんNGNG
唐揚げ
0737デフォルトの名無しさんNGNG
>>735
ネタはもういいよ…。(^^;)
0738デフォルトの名無しさんNGNG
>>737
次スレの 1 ですか?
0739デフォルトの名無しさんNGNG
次スレの1の心が読めない・・・
0740デフォルトの名無しさんNGNG
荒らしているやつの心は単純すぎてつまらない(^_^;)
0741デフォルトの名無しさんNGNG
正直、1 に載せるリンクで、「comp.lang.c FAQ(英語の原文)」 は要らないと思う。

あと関連スレが 「推薦図書/必読書のためのスレッド」 だけなのも何だか。
もっと揃えるか、またはこれも消すか。

つーかまあ 1 にリンクが溜まるのは良くないのだが。
0742デフォルトの名無しさんNGNG
いちいち食って掛かるところを見ると 740 は次スレの 1 ケテーイ
0743デフォルトの名無しさんNGNG
>>740
次スレの 1 ですか?
0744デフォルトの名無しさんNGNG
>>742-743
やっぱり単純だな(^_^;)
0745デフォルトの名無しさんNGNG
>>744
泣きそうな顔してるね、どうしたの?(^-^;)
0746デフォルトの名無しさんNGNG
>>744
単純だな。
goto >>742;
0747744NGNG
ああDQNスレ立てて悪かったよ
もう来ねーよ ヽ(`Д´)ノ ウワァァン
0748デフォルトの名無しさんNGNG
叩かれまくりたい 744 の登場
0749デフォルトの名無しさんNGNG
>>744 おかーちゃんの所に(・∀・)カエレ!
0750デフォルトの名無しさんNGNG
問題:次のプログラムをi386上で実行するとどうなるか,その理由もあわせて答えよ.


#include <stdio.h>

void test(int s0, int s1, int s2, int s3){
int s4[400];
s4[401] += 16;
}

int main(int argc, char** argv){
test(0, 1, 2, 3);
exit(1);
printf("hoge\n");
}


0751デフォルトの名無しさんNGNG
>>750
OS もコンパイラも指定しないでよくそんな問題が出せるな。
0752デフォルトの名無しさんNGNG
>>750
<stdlib.h> インクルードしてない状態で exit() を呼ぶな。
0753デフォルトの名無しさんNGNG
>>750
main() で値を返せ。
0754デフォルトの名無しさんNGNG
testの引数はなんのためにあるんだ?
0755デフォルトの名無しさんNGNG
問題:次のプログラムをhttp://pc3.2ch.net/test/read.cgi/tech/1037101156/上に投稿するとどうなるか,その理由もあわせて答えよ.


#include <stdio.h>

void test(int s0, int s1, int s2, int s3){
int s4[400];
s4[401] += 16;
}

int main(int argc, char** argv){
test(0, 1, 2, 3);
exit(1);
printf("hoge\n");
}
0756デフォルトの名無しさんNGNG
>>755宿題スレへ行けと言われる。理由:ここは宿題を教える場所では無いから。馬鹿にされる理由:汚ないプログラムだから。煽られる理由:馬鹿な質問をするから。無視される理由:飽きられたから。
0757デフォルトの名無しさんNGNG
>>755
答え: >>750-754
理由: >>750-754 が現に存在するから。
0758デフォルトの名無しさんNGNG
「答えよ」なんて言われてせっせと答えるのは試験位なもの。
普通はそんな糞質問に答える義務等、無い。
cより前にk語を覚えよう。
0759デフォルトの名無しさんNGNG
まあ >>750 のコードは、exit() がスキップされるのを期待したんだろう。

s4[400] は、exit() の呼び出し元のアドレスを格納したスタックの直前の領域に確保される。
ANSI では int a4[400]; を宣言した時に a4[400] にアクセスできる事を保証しているので、
実際には sizeof(int) * 401 バイトの領域が確保される。
つまり、a4[401] は呼び出し元のアドレスが格納されているので、これを書き換えてやると関数から
戻る先が換えられる。

なお、int s4[N]; の時に s4[N + 1] にアクセスすればいいので、N == 400 である必要は特に無い。
あと、引数は呼び出し元のアドレスより後のスタックに格納されるので、いくつあるかは関係無い。


が、これがうまくいくのは余程限定された状況でだな。
「i386 上」 だけでは成り立たない。

コンパイラが、変数を必ずスタックに、詰めて確保する事。
sizeof(int) == sizeof(void (*)()) が成り立つ事。
操作した戻り先のアドレスに、必ず安全なコードが書かれる事。
コードが最適化されない事。
デバッグモードでコンパイルされない事。

これだけの条件が揃う事はあまりない。
よって >>750 はクソ。
0760デフォルトの名無しさんNGNG
なんでexit(1);のコードが16byteってわかるん?
0761デフォルトの名無しさんNGNG
>>760
だから、それすら確定していない。
> 操作した戻り先のアドレスに、必ず安全なコードが書かれる事。

特定のコンパイラが吐いたコードのリスティングを取るか逆汗して
調べたんだろ。
ちなみに VC6 では、call _exit、pop ebx、pop esi、pop edi が
スキップされる。
push に対する pop がスキップされるのは、malloc() に対する free() が
スキップされるのに等しい。
0762761NGNG
ちなみに MS-C6 では、16 を足すと main() からはみ出てしまうので、
はっきり言って何が起こるか分からない。
0763デフォルトの名無しさんNGNG
今時i386のPCなんかネーヨ
で終わりにしたいな(w
0764761NGNG
もう一つ追加。
VC6 では、無条件の exit() があると、それより後ろを全部カットする。
だから printf() は結局実行されない。
0765デフォルトの名無しさんNGNG
returnはまだしも、単なる一関数にすぎないexitでそこまでしてくれるのか。
まあgccもgetsを使うと危険だと警告してくれたりするけど。
0766デフォルトの名無しさんNGNG
今回も伸びた割には内容の無いスレだったな
0767デフォルトの名無しさんNGNG
まあ、標準ライブラリの関数をネイティブのステートメントとして解釈する処理系は
多いと思うよ。
VC なんか ZeroMemory() をインライン展開したりするし。
0768デフォルトの名無しさんNGNG
>>761
test()の実引数のクリアはどこ行ったのよ?
add esp,16
0769デフォルトの名無しさんNGNG
あのコードを VC に放り込んだ場合、実引数なんてものは出てこないのだが。
最適化 Off の状態で。
ただし、main() と test() を別々にコンパイルするなら別。
0770768NGNG
実引数って間違った表現だな。パラメータのことね。
0771768NGNG
>>769
そうだったんか。staticでもないのに?
ちょっとこっちでもやってみるね。
0772デフォルトの名無しさんNGNG
出てくるじゃん
0773デフォルトの名無しさんNGNG
「向こう」 が age らけちゃったから
こっちも唐揚げ
0774768NGNG
こっち(VC5)では最適化をOFFにしても何してもパラメータが出た。

つーか、test()がstaticでない限り、外からも呼ばれる可能性が
あるので、test()とのパラメータ受け渡しは省略できるはず
ないと思うんだが。俺が変なのかな?

push 3
push 2
push 1
push 0
call _test
add esp, 16
push 1
call _exit
add esp, 4
0775769NGNG
>>774
スマソ、もれの勘違いだったようだ。
(問題を簡単にするために仮引数無しのバージョンのソース書いてた)
で、

>>759
> 引数は呼び出し元のアドレスより後のスタックに格納される

外からいくら引き渡されても、結局スタックの一番先頭にあるのは戻り先のアドレス。
test() はそれを使って return するだけ。
スタックに大量に積んだ引数の始末は、その後に呼び出し側がつける。

よくわからないなら、(あなたはアセンブリコードが読めるようなので) 実際に
そうしてみて確認してみればいい。
引数が全く指定されなくても大量に指定されても、動作に影響の無いコードに
なってるはずだ。
0776デフォルトの名無しさんNGNG
(void)printf("%d\n"a);
みたいにやって返値を無効(?)にしてるのかどうか
わかりませんが
これが呼び出し側に与える影響というのは
どういうものなのでしょうか?
返値を何かになんらかの変数に代入してる
ようなことは見受けられませんので理由がわかりません
0777デフォルトの名無しさんNGNG
(void) がする事は何も無い。
付けても付けなくてもコンパイラは同じコードを吐く。

戻り値は一般に、CPU 内部の特定の作業領域に保存される。
(x80 なら EAX レジスタ)
その後のプログラムによって、いずれその CPU 内部の特定の作業領域は
別のデータで上書きされて消える。
それだけだ。

その戻り値が変数に代入されていたり式に使用されていれば、上書きされる前に
どこかのメモリ領域か、CPU 内部の他の作業領域にコピーする。
0778デフォルトの名無しさんNGNG
意味ないですよね
bsdのpingとか観てたらそんなコードがありましたんで
そっか
0779デフォルトの名無しさんNGNG
>>778
lintなどのツールに文句を言われないために付けることはある。
0780デフォルトの名無しさんNGNG
>>778
コンパイラの警告を黙らせるためのおまじないだと思う。
0781デフォルトの名無しさんNGNG
ANSI に対応したコンパイラで、戻り値を捨てると警告が出るコンパイラが
あるのか?
0782デフォルトの名無しさんNGNG
unsigned char c;
switch (c) ...
とした時、caseがちょうど0〜255だけあるのに
レンジチェックするコードが出てしまいます。
レンジチェックせずにいきなりテーブルジャンプするように
する方法はないでしょうか?

あるいは「このコンパイラならOK」という情報でも
けっこうです。

今使っているコンパイラはVC6です。
0783デフォルトの名無しさんNGNG
>>782
テーブルジャンプするのにswitchを使うのが間違い
func tbl[] = { func_a, func_b, fund_c, ...};
tbl[c]();
でいいんじゃないか?
0784774NGNG
>>775
あれ?もしかして後半も俺向けの返事?

だったら、
> 引数が全く指定されなくても大量に指定されても、動作に影響の無いコードに
> なってるはずだ。

これは間違い。
関数から戻った直後に引数をクリアするコードが
入っているかどうかによって、
s4[401] += 16; した時の戻り先も変わってくる。
(戻り先アドレスは変わらないが、後続の命令の配置がずれる)

さらに言えば、引数の有無だけでなく、
引数のサイズが256バイト以上か未満かでも
 add esp,バイト数
という命令のコードサイズは違ってくるはず。

つまり、もろに動作に影響する。
0785デフォルトの名無しさんNGNG
>>782
suitch で評価されるのは int 値じゃなかった?
unsigned char で評価されるのは期待できなかったと思うけど。
0786775NGNG
>>784
すまん、漏れの解釈が間違ってた。
「あの場合に限って」 と言うなら、あなたの言う通り。
test() に s4[401] += 16; のような危険なコードが入ってなければ、
漏れの言った通り。
0787デフォルトの名無しさんNGNG
↓ は神
0788デフォルトの名無しさんNGNG
↑は鬼畜
0789デフォルトの名無しさんNGNG
>>782
VC6で試してみたけど、やっぱりチェックコードが入ってるね。

andeax, 255; 000000ffH

チェックコードの直前にこういうコードが入ってるんだから、
チェックする必要ないんだけど、ここまでは考えてないんだろうね。
0790デフォルトの名無しさんNGNG
↑ は神
0791デフォルトの名無しさんNGNG
↓は鬼畜
0792デフォルトの名無しさんNGNG
ウンコ引数にして投げるぞ
0793デフォルトの名無しさんNGNG
#include <stdio.h>
main()
{
int n;
printf("SEISUU=");scanf("%d",&n);
printf("%d\n",n);
}

上記のようなプログラムを実行した場合に
絶対値の大きな整数を入力すると入力した通りの数字が表示されないんですが
何が理由なんでしょうか?あと、表示される数字には規則性はあるんでしょうか?
0794デフォルトの名無しさんNGNG
aaa
0795デフォルトの名無しさんNGNG
>>793
#include <limits.h> をやった上で、INT_MIN と INT_MAX を %d で printf()。
それが int 型で扱える数値の範囲です。
もっと大きな方が必要な場合は、double を使ってください。

limits.h と float.h を調べると、いろいろな型の限界がわかります。
ただし、ここの数値を換えても限界値が変わるわけではないので変えないで下さい。

>>794
( ´,_ゝ`)フーン
0796デフォルトの名無しさんNGNG
>>793
intの範囲外の数値を入力したんじゃネーノ
0797793NGNG
>>795-796
親切にどうもありがとうございます
助かりました
0798JPS ◆M0LaMzf5rY NGNG
getcheって知ってる?conio.hにあるやつ。
あれのWhileループでEOFみたいに
while(c=getche() != 0x1a)
ってやってんだけど、どういう意味?
16進数だよね?
0799デフォルトの名無しさんNGNG
DQNに答えることなど・・・無い!
0800デフォルトの名無しさんNGNG
getche? conio.h? (゚Д゚)ハァ?
0801デフォルトの名無しさんNGNG
>>800
Windows環境でのみ動作するヘッダだYO!
0802デフォルトの名無しさんNGNG
>>801
むしろDOS環境
0803デフォルトの名無しさんNGNG
>>798
実行してみそのままだから
何かキーが押されたらそのキー出力して0x1a(^z)だったら終了
0804デフォルトの名無しさんNGNG
みんなメアド見ないの?
sage のだけクリックしとけば、それ以外が何かしら違うものと色で区別つくから
覗いてみたりするけど。
0805デフォルトの名無しさんNGNG
>>798
while((c=getche()) != 0x1a) {
printf("%x\n", c);
}

こういうコードでも動かしてみて、片っ端から
キーを押せば、どれか分かるんじゃない?
0806デフォルトの名無しさんNGNG
>>804
ボケにマジレスされたからって、いちいち文句言わなくていいよ。
0807804NGNG
間違えて age ちゃった・・・
>>806 らじゃ。
0808デフォルトの名無しさんNGNG
線型構造を勉強してるんだけど
int list_insert(Node *list,int in_number,int value)
{
Node *pos_node=list,*new_node;

if(in_number < 0)
in_number = 0; // 限界値チェック

new_node=malloc(sizeof(Node));
if(new_node == NULL)
return 1;

// 目的位置の一個前まで移動
while(in_number > 1 && pos_node->next != NULL)
{
pos_node = pos_node->next;
in_number--;
}

// 挿入ノードに 元目的位置のポインタ
// および 挿入する値 を代入し
new_node->next = pos_node->next;
new_node->value = value;

// 目的位置の一個前に挿入ノードを連結
pos_node->next = new_node;

return 0;
}
0809808NGNG
この関数のなかでpos_nodeはなんで必要なの?
listをこぴってるから、直接リストをいじるのとかわらないんでないの?
0810デフォルトの名無しさんNGNG
>>808
必要ないです。
かわらないです。
いじょ。
0811808NGNG
>>810
( ̄□ ̄;)!!
listの必要性を考えて小一時間ネット上をうろついたオレって一体・・・
0812デフォルトの名無しさんNGNG
>>811
引数を直接いじると何か気持ち悪い、っていう程度の
理由だと思うよ。
0813デフォルトの名無しさんNGNG
>>812
気持ちはわかるね。たぶん808のソースはどっかのコピペだろうから
分かりやすくしてんだろう。
でもオレも後で見たときの可読性を考えれば、いい事だと思う。
0814デフォルトの名無しさんNGNG
>>813
あなたの文章には鬱病の人特有の言い回しが見れます。
病院に行ったほうがいいと思います。
鬱は必ず直ります。
0815デフォルトの名無しさんNGNG
>>814
うつ病特有の言い回し?
0816813NGNG
>>814
813ですが何か?
0817デフォルトの名無しさんNGNG
だれかいますか?
0818デフォルトの名無しさんNGNG
>>817
いるよ。はあはあ
0819デフォルトの名無しさんNGNG
廃れたね。オレが話題をふるYO!
お前らコンパイラとエディタなんですか?
0820デフォルトの名無しさんNGNG
またその話題かよ。
0821デフォルトの名無しさんNGNG
廃れたねってお前。チャットじゃねーんだからよ。
そんなあせんなよ。
0822デフォルトの名無しさんNGNG
新スレ立って荒らされてるな(プ
0823デフォルトの名無しさんNGNG
構造体listが
{
  int num;
list *next;
}
みたいな線型リストだとして
list == NULLっていうのはどういうことですか?
listの要素全部が0,NULL,'\0'ってこと?
0824デフォルトの名無しさんNGNG
あともういっこ!
線型リストのさいしょの構造体には値は入れないんですか?
0825デフォルトの名無しさんNGNG
>>823
それは実装した人次第だが、一般的にはリストが空。
0826デフォルトの名無しさんNGNG
>>824
最初はポインタの方がすっきりするが、プログラムを組むとわかるが
空の構造体の方が扱いやすい。
0827デフォルトの名無しさんNGNG
>>824
それをおセンチっていいます。
0828デフォルトの名無しさんNGNG
>>827
なつかしいでつね
0829デフォルトの名無しさんNGNG
>>823-826
質問と回答が殺伐としていてよいね

>>827-828
消えろ。
0830デフォルトの名無しさんNGNG
>>825 && 826
サンクス
0831デフォルトの名無しさんNGNG
ある関数が再入可能かそうでないか知りたいのですが、
どうやって調べたらよいのでしょうか? なにかリストみたいなのはありますか?
printfは再入可能でないらしいのですが、僕には理由がわからず。
とにかく、リストがあればとりあえずは楽かなと。
0832デフォルトの名無しさんNGNG
830のレスみて思ったけど、次スレタイはCの演算とかうまく使ってよ。
C++ってなかなかいいセンスしてると思うのは俺だけか。
0833デフォルトの名無しさんNGNG
この静けさ。完全にCを語り尽くした。
0834デフォルトの名無しさんNGNG
>>831
マルチスレッドで使って安全という意味だよね?
C言語の規格自体ではそこまで決まってない。
かといって処理系ごとにまったくバラバラかというとそうでもない。
Unix系のOSなら、Single Unix Specificationという規格でけっこう細かく
決まっている。
http://www.opengroup.org/onlinepubs/007908799/xsh/threads.html
のThread-safetyセクションにリストされている関数はthread-safeで*ない*。
他は全てthread-safe。(printfもthread-safe。)

SUS準拠OS以外なら、処理系のマニュアルを見るしかない。
0835デフォルトの名無しさんNGNG
>>833
今度から初心者の質問すれと
上級者の議論すれにわけたいね
0836デフォルトの名無しさんNGNG
>>835
わけたら余計に人減るじゃん。
0837デフォルトの名無しさんNGNG
>>834
マルチスレッドもありますが、割り込みでprintfを使おうとしてました。
自分なりに調べましたが、
printfはスレッドセーフですが、Async-Cancel-Safe 関数ではないそうです。

いやぁ、よくわかりませんなぁ。素人は割り込むなと言うことですか?w
0838デフォルトの名無しさんNGNG
>>837
シグナルハンドラの中で使いたいのなら、async-cancel safeじゃなくて
async-signal safeなものを探すべきでしょう。
Solarisだとマニュアルに一覧があるけど(90個くらい)。
0839デフォルトの名無しさんNGNG
>>838
SolarisのAsync-Signal-Safe functions一覧
http://docs.sun.com/db/doc/816-0220/6m6nkoroc?a=view
0840デフォルトの名無しさんNGNG
>>837
printfをシグナルハンドラから呼びたいなら、
Async-Signal-Safeでないライブラリ関数を実行中はシグナルをブロックするように
すれば良いんじゃない?

あるいは、シグナルハンドラでは何か情報を変数に書くだけにして、
メインのスレッドでその情報をプリントする。
0841デフォルトの名無しさんNGNG
変数宣言時に
char buf[BUF_SIZE] = "";
と書くとbufの先頭1バイトだけでなくBUF_SIZE全部が終端文字で初期化されます。
これは標準なのでしょうか?
0842デフォルトの名無しさんNGNG
>>841
「終端文字で」ではなく、「残りは、staticな変数と同じように」
初期化されます。それが規格どおりの振る舞いです。
0843デフォルトの名無しさんNGNG
>>842
すばやいご回答ありがとうございました。
0844デフォルトの名無しさんNGNG
volatile int i;
void signal_handler (int s)
{
  i = 1;
  printf ("%d\n", s);
}
↑ここでprintfを呼ぶのと
int main ()
{
  signal (SIGINT, signal_handler);
  while (!i)
    printf ("%d\n", i);
  return 0;
}
↑ここで割り込みを入れるのと、どちらがいけないということですか?
0845デフォルトの名無しさんNGNG
>>844
(断っておきますが、これはC言語の範囲を超えた話題です。)

mainからprintfを呼び出して実行中にシグナルを受け取ったとします。
そのとき、printfが何かの資源をロックしていたとします。
signal_handlerの中からprintfを呼ぶと、デッドロックが起きる可能性が
あります。

汎用の解決策は >>840 の通りです。処理系によっては、シングルスレッドの
プログラムだとprintfが資源をロックしたりしない(したがってデッドロック
が起きない)かも知れません。
0846デフォルトの名無しさんNGNG
>>845
説明して頂いてどういうことか分かりました。
この例では両方で呼び出してはまずいということですね。
割り込みをするプログラムでは、
printfを使ってはいけないのかと思ってしまっていました。
ありがとうございました。
0847デフォルトの名無しさんNGNG
>>798
その前に糞スレの削除依頼出してこいや
話はそれからだ
0848デフォルトの名無しさんNGNG
線形リストだぜははっと、さくさくプログラミングしてたんでしが、、
リンクにポインタを使ってたばかりに、reallocしたら大変な事になって
しまいますた。

問題なのは当たり前だけど、reallocを使う可能性がある時は整数インデックス値
振らんといかんの?ってのは常識!?
0849デフォルトの名無しさんNGNG
>>848
まともな日本語で書いてみてくれないか。
0850デフォルトの名無しさんNGNG
int a[] = {1,2,3,4,5,・・・・・};
と配列を初期化したとき、配列の要素数を簡単に知る方法はありますか?
0851デフォルトの名無しさんNGNG
>>848
ひょっとして、リンクにつながった要素をreallocしようとしてるとか?
(1)大きさが変わる可能性のあるものは、リストにつながってる構造体とは
別にして、リストの構造体からポインタで指す。
(2)双方向リストにして、reallocする前にいったんリストからはずし、
reallocの後で挿入しなおす。
のどちらかで解決。
0852デフォルトの名無しさんNGNG
すまそ。

レコードの増減・並び替えが行われるデータ構造があるんだが、最初にこれを読み込む時
にはレコード総数が分かっているのでmalloc(データ構造*レコード数)という感じでメモリ確保
していたんだ。
で、データの追加・削除・並び替えが発生するんで、リスト構造にし、リンクにはレコード
参照ポインタを使っていたの。
しかし、ここで問題があって、データの追加・削除時にはreallocを使って全データのメモリ
を再確保していたんだよね。
これすると、メモリアドレス変わっちまうんで、リンク情報が役に立たなくなって困ったわけ。

1レコード読むたびにmallocして、追加・削除するたびにもmalloc,freeしていれば
よかったんだけど、レコード数が多いから速度的に難があると思って、全データを
一気にmalloc,reallocしてたの。

漏れ、
非常識なんだろな。
0853デフォルトの名無しさんNGNG
852=848
ですた。
>851 ありがと。
0854デフォルトの名無しさんNGNG
>>852
追加時にreallocする必要はないだろ。(1個ずつmallocすればよい。)
削除時にreallocは無理だろ。(途中だけ削除したりしないのか?)

いずれにせよreallocはやめるべし。
最初にまとめてmallocするのはそのままでもよい。
freeする替わりに、自分で作ったフリーリストにつないで置けばよい。
追加のときはフリーリストから空き構造体を取り出す。フリーリストが
空ならmallocする。
0855デフォルトの名無しさんNGNG
>>850

sizeof(a)/sizeof(i)
0856855NGNG
iてなんじゃい(欝
sizeof(a)/sizeof(int)だ。
0857デフォルトの名無しさんNGNG
>854
> 削除時にreallocは無理だろ。(途中だけ削除したりしないのか?)
リンクポインタだけ書き換えて、全データサイズ縮小realloc・・・すまそ。
厨な組み方してました。阿呆です。厨でも組みませんな。逝ってきます。

>freeする替わりに、自分で作ったフリーリストにつないで置けばよい。
>追加のときはフリーリストから空き構造体を取り出す。フリーリストが
>空ならmallocする。
そっか!なるほど。
フリーリストとは思い付かなかった。
質問して良かった。ありがと!!
0858デフォルトの名無しさんNGNG
(int)(sizeof(a)/sizeof(a[0]))
0859デフォルトの名無しさんNGNG
>>858
なぜintにキャストするのかわからん。
unsignedのままじゃまずいのか?
0860デフォルトの名無しさんNGNG
まあ、線型リストでreallocは普通しないな。
0861デフォルトの名無しさんNGNG
>>859
unsigned だと何か突っ込まれるんじゃないかと、無い知識を総動員してキャストしてみたものの
結局突っ込まれてしまった…に一票。
0862デフォルトの名無しさんNGNG
ポインタを置く領域をmallocするとか・・・
0863デフォルトの名無しさんNGNG
>>861
おまえのようなバカに優しいCスレ住人の俺が教えてやるとだな、
いや、教えるのもめんどうなのでエキスパートCプログラミング54ページを読め。
0864デフォルトの名無しさんNGNG
バグをバグと見ぬけないプログラマは(C言語を使うのですら)難しい。
0865デフォルトの名無しさんNGNG
>862
レコード個々にmallocが必要になってパフォーマンス悪くならない?
0866デフォルトの名無しさんNGNG
malloc後のソーティング,追加削除は配列よりポインタ配列の方が速いな。
他の構造と比べても単純で操作も難しく無い。
0867デフォルトの名無しさんNGNG
>>866
意味がわかりません。
0868デフォルトの名無しさんNGNG
863はsizeofが返した値をいちいちintにキャストしているのかな。
わざわざunsignedにしてあるのに(ワラ
0869bloomNGNG

http://homepage.mac.com/bloombloom/
0870デフォルトの名無しさんNGNG
(int)strlen(str);
0871デフォルトの名無しさんNGNG
>>867
(*^o^*)
0872デフォルトの名無しさんNGNG
>>871
(*^o^*)ごるぁ♪
0873デフォルトの名無しさんNGNG
>>ALL
(*^o^*)おはよう♪
ヌル文字なんて存在しないよね!?
あるサイトに「文字列の終端はヌル文字で・・・」ってあったYO!
これマジでネタじゃないから、ちょっと不安になった・・・
0874デフォルトの名無しさんNGNG
もっと面白いネタを用意して出直してこい
0875デフォルトの名無しさんNGNG
>>873
ASCIIの「'\0'」をヌル文字またはナル文字と言うことはありますが何か?
またNULLポインタ「NULL」とは別物ですが何か?
最後にヌルストリング「""」と言うものも存在し
上記三種は全て別物ですが何か?
0876initializationNGNG
Type_A object[2] = {[1] = {.member1 = "hoge", .member2 = 3}};
0877デフォルトの名無しさんNGNG
簡潔厨のコード*hoge->str++ = ch;見る人の事まで考えたプロのコード*hoge->str = ch;hoge->str++;
0878デフォルトの名無しさんNGNG
>>852
リンクにポインタではなく、配列のインデックスを使うと良い。
0879デフォルトの名無しさんNGNG
>>877
見る人の事まで考えて、改行してくれ。
0880デフォルトの名無しさんNGNG
>>877
むしろ冗長
0881デフォルトの名無しさんNGNG
\0ってナル文字、ヌル文字以外に呼び方あるの?終端文字?
0882デフォルトの名無しさんNGNG
>>881
C では普通考えられないが、\0 以外が終端文字になる事もある。
ナル文字、ヌル文字を覚えておけば普通は問題無いが、単にゼロと呼ぶ人がいる
すも知れない。
0883デフォルトの名無しさんNGNG
>>880はプログラマー辞めた方が良いな…,哀れ過ぎる。
0884デフォルトの名無しさんNGNG
*hoge->str++ = ch; を読めない人の方がプログラマ辞めた方が良いと思われ
0885デフォルトの名無しさんNGNG
while(fgets(...))はいかんらしい。while(fgets(...)!=NULL)とかかないとダメらしい。


ワラ
0886デフォルトの名無しさんNGNG
その話はもういいよ
論争スレ逝ってくれ
0887デフォルトの名無しさんNGNG
相手の打ちにくい所にボールを返すのが糞プログラマー
相手がどんなボールを打って来ても打ちやすい所にボールを返すのが真のプログラマー

糞プログラマーの言い分は決まって「へぇ、そんなボールも打ち返せないんだ」
真のプログラマーは糞プログラマーと同じ事を苦も無くできるが打ち返す側の
事も考慮する。
0888デフォルトの名無しさんNGNG
877=883 が何も考えていない事はよくわかりますた。
0889デフォルトの名無しさんNGNG
>>886
論争ならここですればいいだろ。そのためのスレッドなんだし。
0890デフォルトの名無しさんNGNG
>>887
意味さっぱりわかんねーよ。
バカスカ打たれてたらピッチャー降格されるだろ
0891デフォルトの名無しさんNGNG
>>887
C に関する話ならここでもいいけど、コーディングスタイルは直接関係ないだろ。
0892891NGNG
889 宛てだった・・・
0893デフォルトの名無しさんNGNG
ネタスレなんだからいいじゃん(*^o^*)
0894デフォルトの名無しさんNGNG
>>888=一人で勝手に自己完結させる(完結|簡潔)厨
0895デフォルトの名無しさんNGNG
>>885
所詮宗教問題であって間違いなんて無いのにワラなんてつけてるところが
相手の意見をまともに聞こうとしない厨房であることが明らかなのだが。
0896デフォルトの名無しさんNGNG
>>868
比較する可能性があるならすべきだが。
0897デフォルトの名無しさんNGNG
>>891
板違い。マ板逝け。
0898デフォルトの名無しさんNGNG
論争嫌いがCスレに来る資格は・・・・無い!
0899デフォルトの名無しさんNGNG
ここは論争スレじゃなくて質問スレだろ。スレタイみろや。
どっちにしてもあふぉのJPSがつくった論争スレがある。
http://pc3.2ch.net/test/read.cgi/tech/1037105440/l50
論争すんだったらこっちでやった方がいいと思うよ。
実際このスレ寿命みじかいのは論争のせいだし。
このスレ以外に宿題とかなしでCのこと訊けるスレないじゃん
0900デフォルトの名無しさんNGNG
>>899
質問にどう答えるべきかの考え方が
人によって違うんだから、質問されたら論争になるのは
仕方がない。
0901デフォルトの名無しさんNGNG
ここの論争ってのは大抵簡単な質問から始まる。
簡単な質問が論争につながってしまうのは
Cが論争を引き起こしやすい言語だからだ。
0902デフォルトの名無しさんNGNG
>>900&901
じゃあスレタイ変えたほうがいいしょ?
質問&論争スレとかさ。
質問しにきた香具師が、困るにきまってる。
0903デフォルトの名無しさんNGNG
>>902
そしたら余計論争烈しくなるじゃん。
0904デフォルトの名無しさんNGNG
今ファイル操作をやってるんですが、コマンド引数を使わずに
char型の文字列にファイル名をプログラム中で入力させて、
読み込む事とかできますか?
また、それを関数に渡して、その関数の中で処理することはできますか?
0905デフォルトの名無しさんNGNG
>>903
だから分けろっつてんの。
質問きて論争になるんだったら、そっから論争スレにうつりゃいい。
0906デフォルトの名無しさんNGNG
>>904
「char型の文字列」では多分できない。
0907デフォルトの名無しさんNGNG
>>904
出来ます。
0908デフォルトの名無しさんNGNG
char 型の文字列
美女の女性が馬から落馬した
0909デフォルトの名無しさんNGNG
>>905
そうだね。そっから論争スレにうつればいいね。
頑張って誘導でもしてくれ(w
0910デフォルトの名無しさんNGNG
正直、仕切り厨の方がウザイ
0911デフォルトの名無しさんNGNG
まともなことを言っている奴が叩かれる。2chらしいな(w
0912デフォルトの名無しさんNGNG
>>910
わざわざ当たり前の事いうお前もうざい
0913デフォルトの名無しさんNGNG
>>906
>>907
どっちですか?
0914デフォルトの名無しさんNGNG
LINUX(CYGWINですが・・・)上でC++でプログラミングをしています
あるプログラムをライブラリ化して、そこから関数を呼び出すということをしたいのですが、
Win32+MFCでの経験はあるのですが、LINUXでのやり方がわかりません。
Win32の場合はDLLを作ってヘッダをインクルードして・・
というやり方だったのですが、それをCYGWINでやるとしたら
どのようになるでしょうか?
0915デフォルトの名無しさんNGNG
>>912
自分のことですか(ワラ
0916デフォルトの名無しさんNGNG
>>914
C言語に関する質問はここでしてください。

問題をちゃんと切り分けて、Cの話かそうでないか洗ってから質問してくれ

スレ違いsage
0917デフォルトの名無しさんNGNG
>>LINUX(CYGWINですが・・・)
( ゚д゚)ポカーン
0918デフォルトの名無しさんNGNG
CYGWINはLinuxエミュレータなんだからLinuxでもいいじゃん。
0919デフォルトの名無しさんNGNG
>>150
こんな話題はどうでせうか。コンパイルできるか?できるとしたら実行結果は?
#include <stdio.h>
#define foo(a) putchar(a)
main()
{
printf("hello\0" "12");
foo /* */ ('\n');
}
0920デフォルトの名無しさんNGNG
>>919
(゚Д゚)ハァ?
0921デフォルトの名無しさんNGNG
>>919
勉強になんねーよヴォケ
0922デフォルトの名無しさんNGNG
>>919
もしかして「この問題みんなには分かんないんじゃ.....ワクワク」
とか思ってたのか?
それとも単なるゴバク?
0923デフォルトの名無しさんNGNG
アイタタタタ・・・
0924デフォルトの名無しさんNGNG
>>919
今 2ch への書き込みが滅茶苦茶遅いのはお前のせいか?
0925デフォルトの名無しさんNGNG
>>924 なんだそりゃw
0926デフォルトの名無しさんNGNG
>>896
えー!
じゃああなた本当に(int)strlen(str)なんてやっているの!?
if(strlen("aaa")>-1)が偽になるってやつでしょ?
0927デフォルトの名無しさんNGNG
C言語って一日2時間くらいやれば何年ぐらいで「C言語できるよ」って言えるくらいになりますか?
0928913NGNG
913ですが、どなたか質問に答えていただけないでしょうか?
>>904
0929デフォルトの名無しさんNGNG
>>928
粘着する前に、自分の日本語を確認してくれ。
0930デフォルトの名無しさんNGNG
>>927
本人の能力と、やる気と、環境による。
他にどんなプログラミング言語を知っているかにもよる。
0931913NGNG
できました。始めはできなかったのに・・・
0932デフォルトの名無しさんNGNG
>>902
ここのスレタイが糞なのは周知の事実
0933デフォルトの名無しさんNGNG
>>932
粘着死ね
0934デフォルトの名無しさんNGNG
>>926
まさかキャストしないと言うんじゃ・・・
0935デフォルトの名無しさんNGNG
>>934
しないんじゃなくて負の数と比べるなんて馬鹿みたいなことはしないよ。
0936デフォルトの名無しさんNGNG
つーかintと比較するならキャストすべきと言ってるんだが。
0937デフォルトの名無しさんNGNG
size_t の値と int とを比較するってどういう場面か具体的に挙げてくれ。
0938デフォルトの名無しさんNGNG
>>937
intの定数と比べるのが多いと思うが、その定数を負の数にするやつは阿呆。
0939デフォルトの名無しさんNGNG
論争に決着がつくまでは質問の答が決まらない。
だから質問スレは必然的に論争スレ。
0940デフォルトの名無しさんNGNG
>>939
スレ分けには基本的に賛成だが、あなたの日本語はおかしい。
「だから」 の前後が全く繋がっていない。
0941939NGNG
>>940
スレ分けは無理だと言っている。
質問→論争→答
の順序なんだから。
0942デフォルトの名無しさんNGNG
Ruby>>>>>>>>>>>>>>>>>>C言語
0943デフォルトの名無しさんNGNG
>>941
だからさ、なんでそこで論争するわけ?
分かってる答えも論争のせいで答えられなかったら
質問スレの意味ないべ。
論争になる質問とそうじゃない質問があるじゃん。
質問してくるやつらは関係ないしょ?答えを求めてるだけで、
論争をみたいわけじゃない。
だったら別の場所で論争して、結論でたら、こっちに来ればいい。
そのほうが質問してくるやつもわかりやすくない?
0944デフォルトの名無しさんNGNG
ファイル入出力のオプション(?)で、
上書きするのはなんですか?
wでやると、中身がなくなってしまうんですが・・・
0945デフォルトの名無しさんNGNG
>>941
>>943
ここでもう、論争が始まっている。
0946デフォルトの名無しさんNGNG
>>943
何故議論が起こって、どのように解決したかが分かった方が
質問者にとってもいいじゃん

>>944
a
0947デフォルトの名無しさんNGNG
>>943
現になってるんだからしょうがないだろ。

つか、「みんなが分かってる答」なんてのが
1つに決まる質問ばかりとは限らない。
0948デフォルトの名無しさんNGNG
if文やwhile文の本体が1つの文のとき、{と}でくくらないで
コードを書いていたんですが、師匠に必ず{}でくくれと
怒られました。そういうものなんでしょうか?
0949デフォルトの名無しさんNGNG
>>948
師匠がDQNなのでわ......
0950デフォルトの名無しさんNGNG
>>948
経験をつめば分かります。
0951デフォルトの名無しさんNGNG
>>948
当り前だ。必ずくくっとけ。
0952948NGNG
見事に釣れました。
0953デフォルトの名無しさんNGNG
油断したよ
0954デフォルトの名無しさんNGNG
ん?括る派が多数なのか?
人に強要する理由でもある?
0955948NGNG
>>952は偽者です。

>>949-951
どっちなのでしょうか?
0956デフォルトの名無しさんNGNG
漏れは括らない。
それでトラブルが起こった事は一度も無い。
0957デフォルトの名無しさんNGNG
>>946
>何故議論が起こって、どのように解決したかが分かった方が質問者にとってもいいじゃん
確かにそうだけどさ、議論ばっかでこのスレが死んでいくのもどうかと思う。
943がいうように、論争なんか見たくないやつもいると思うしよ
見たいやつもいるかもしれんが

どっちにしてもスレタイが悪いんだよ
質問スレなんていったら、普通は論争しなさそうだし。
「おまえら!Cの質問一生懸命考えます」って感じにすれば
0958デフォルトの名無しさんNGNG
>>954
仕事ではあわせる必要がある。
0959デフォルトの名無しさんNGNG
>>955
ただのコーディングスタイルの問題だから、自分の好きな方を選べ。
師匠の風当たりに耐えられなかったら、師匠の前では括る方を選べ。
0960947=948NGNG
>>955
やるな。そうきたか。
0961デフォルトの名無しさんNGNG
>>958
意味がわからん。
何の答えにもなってないぞ
0962デフォルトの名無しさんNGNG
何だ、スレタイは >>702 でよいという事か?
0963デフォルトの名無しさんNGNG
>>944
上書き? wが上書きだけど。
追加ならa
0964デフォルトの名無しさんNGNG
>>961
答え出す必要あるの?
0965デフォルトの名無しさんNGNG
>>956
トラブルがおこったことが無いのは経験が浅いから。
方針が括る括らないか限らず括弧がある/ないと勘違いしてミスったことはあるはず。
0966デフォルトの名無しさんNGNG
>>961
コーディング規約に合わせるという事だろう。わかれ。
0967デフォルトの名無しさんNGNG
>>964
はい?
0968デフォルトの名無しさんNGNG
>>961
コーディング規約に従うという事だろう。
0969デフォルトの名無しさんNGNG
>>944
あ、もしかして書いた部分だけ上書きして、他の部分はのこしたいということ?
それならメモリにファイルの内容を全て取り込んで、メモリ上で上書きするといいよ。
最後にその内容をwで全て書き出す。
0970947=948NGNG
いやー、「質問されたら論争は必須」を実証するために
意見の割れそうな質問してみて、実証できたわけだが、
>>955の方が上わ手だった。 まいりました(w
0971デフォルトの名無しさんNGNG
>>965
トラブルが起きるのは経験が浅いから。
括弧がある/ないと勘違いしてミスったことなんか無い。
つーか C はかれこれ 10 年書いてますが何か?
0972デフォルトの名無しさんNGNG
>>966
んなこたぁ分かっとるわ。ハゲ
0973947=948NGNG
見ての通り、結局スレタイは「質問&論争ウエルカム」
ということで
0974デフォルトの名無しさんNGNG
>>971
経験が浅い時期がなくて経験をつんだ奴なんていない。
0975デフォルトの名無しさんNGNG
>>973
まあそれは同意する。
0976デフォルトの名無しさんNGNG
>>969
r+
0977デフォルトの名無しさんNGNG
>>969
えーと、ちゃんと説明します。
まずプログラムAでファイルに500個の1から1000までの乱数を出力して、
そのあとプログラムBで、そのファイルから読み取ったデータを
照準にソートして同じファイルに出力したいんです。

プログラムBは入力と出力の両方必要なんで、はじめはrで読み取って
いったんfcloseしてから、wしてたんですが、これじゃだめですか?
あとファイル操作一回で同じことができたら教えて頂けませんか?
0978デフォルトの名無しさんNGNG
>>972
じゃ、お前が答えだせ。
0979デフォルトの名無しさんNGNG
>>971 は10年間、20行以上のプログラムを書いたことがない。
0980デフォルトの名無しさんNGNG
>>976
それで途中を書き換えても大丈夫だったっけ?
0981デフォルトの名無しさんNGNG
>>980
yes
0982977NGNG
すいません。照準じゃなくて昇順でした。
あとプログラムBでのファイル出力は、上書きでしたいです。
元のデータを消して。
0983デフォルトの名無しさんNGNG
>>981
そうか。さんきゅ。
0984デフォルトの名無しさんNGNG
今日は日本語が不自由な人がたくさんいますね
0985デフォルトの名無しさんNGNG
>>974
( ´,_ゝ`)フーン

>>979
そう思いたいならそう思っとけば。
事実は違うから、漏れは気にしない。
0986デフォルトの名無しさんNGNG
誰か次スレ立てて。
間違ってもあのウンコを再利用しようなんて思わないで。
0987デフォルトの名無しさんNGNG
>>984
誰のことよ。お前の理解力がないんだろ(藁
0988デフォルトの名無しさんNGNG
タイトル: char *c[43] = {"C言語のことは漏れに聞け!"};

まず問題を冷静に吟味してCの話か否かをはっきりさせてから質問しろ。
むしろ質問する前にWEBで検索するのが常識だ。

GUIなどの標準Cではできない事の質問は使用している開発環境のスレへ行け。
ソース丸投げ、宿題、書籍 は専門の別スレがあるのでそこへ行け。
コンパイラを探しているなら >>2 を見よ。

上記を逸した場合の結果は激しく未定義とする。

C FAQ 日本語訳
http://www.catnet.ne.jp/kouno/c_faq/c_faq.html
Cプログラマ必読 ・プログラミング言語C(通称 K&R)
http://www.amazon.co.jp/exec/obidos/ASIN/4320026926/

前スレ
c[42] = "http://pc3.2ch.net/test/read.cgi/tech/1037101156/";
0989デフォルトの名無しさんNGNG
【コンパイラ】
gcc
http://gcc.gnu.org/

【Win32用の開発環境のみ。】
gcc-cygwin
http://www.redhat.com/software/tools/cygwin/
gcc-mingw
http://www.mingw.org
Digital Mars C++
http://www.digitalmars.com/
Open Watcom
http://www.openwatcom.com/
Borland C++ Compiler 5.5.1
http://www.borland.co.jp/cppbuilder/freecompiler/

【ライセンスや機能などに問題あり】
Microsot C/C++ 13.0.9466(VC.NET)
http://www.microsoft.com/japan/msdn/netframework/downloads/
LCC-Win32
http://www.cs.virginia.edu/~lcc-win32/
CINT
http://root.cern.ch/root/Cint.html
めじろ++98
http://www.vector.co.jp/soft/win95/prog/se075910.html
0990デフォルトの名無しさんNGNG
c[41] = "http://pc3.2ch.net/test/read.cgi/tech/1036876790/";
c[40] = "http://pc3.2ch.net/test/read.cgi/tech/1036673739/"; // 待機中
c[39] = "http://pc3.2ch.net/test/read.cgi/tech/1036409391/"; // 待機中
c[38] = "http://pc3.2ch.net/test/read.cgi/tech/1035729526/"; // 待機中
c[37] = "http://pc3.2ch.net/test/read.cgi/tech/1035623265/"; // 待機中
c[36] = "http://pc3.2ch.net/test/read.cgi/tech/1035211039/"; // 待機中
c[35] = "http://pc3.2ch.net/test/read.cgi/tech/1034337064/"; // 待機中
c[34] = "http://pc3.2ch.net/test/read.cgi/tech/1033240509/"; // 待機中
c[33] = "http://pc3.2ch.net/test/read.cgi/tech/1032606064/"; // 待機中
c[32] = "http://pc3.2ch.net/test/read.cgi/tech/1031905402/"; // 待機中
c[31] = "http://pc3.2ch.net/test/read.cgi/tech/1031340950/"; // 待機中
c[30] = "http://pc3.2ch.net/test/read.cgi/tech/1030786546/"; // 待機中
c[29] = "http://pc3.2ch.net/test/read.cgi/tech/1029605182/"; // 待機中
c[28] = "http://pc3.2ch.net/test/read.cgi/tech/1028495798/"; // 待機中
c[27] = "http://pc3.2ch.net/test/read.cgi/tech/1027160374/"; // 待機中
c[26] = "http://pc.2ch.net/tech/kako/1026/10260/1026048820.html";
c[25] = "http://pc.2ch.net/tech/kako/1024/10249/1024918442.html";
c[24] = "http://pc.2ch.net/tech/kako/1024/10240/1024033400.html";
c[23] = "http://pc.2ch.net/tech/kako/1022/10224/1022402165.html";
c[22] = "http://pc.2ch.net/tech/kako/1022/10224/1022402165.html";
c[21] = "http://pc.2ch.net/tech/kako/1022/10220/1022045622.html";
0991デフォルトの名無しさんNGNG
c[20] = "http://pc.2ch.net/tech/kako/1021/10214/1021459016.html";
c[19] = "http://pc.2ch.net/tech/kako/1020/10207/1020756993.html";
c[18] = "http://pc.2ch.net/tech/kako/1020/10202/1020260813.html";
c[17] = "http://pc.2ch.net/tech/kako/1019/10193/1019372139.html";
c[16] = "http://pc.2ch.net/tech/kako/1018/10184/1018453690.html";
c[15] = "http://pc.2ch.net/tech/kako/1016/10165/1016519243.html";
c[14] = "http://pc.2ch.net/tech/kako/1015/10152/1015286974.html";
c[13] = "http://pc.2ch.net/tech/kako/1013/10139/1013990673.html";
c[12] = "http://pc.2ch.net/tech/kako/1012/10123/1012348974.html";
c[11] = "http://pc.2ch.net/tech/kako/1009/10094/1009499565.html";
c[10] = "http://pc.2ch.net/tech/kako/1008/10083/1008300863.html";
c[9] = "http://pc.2ch.net/tech/kako/1007/10072/1007272267.html";
c[8] = "http://pc.2ch.net/tech/kako/1005/10058/1005811510.html";
c[7] = "http://pc.2ch.net/tech/kako/1005/10058/1005811510.html";
c[6] = "http://piza2.2ch.net/tech/kako/999/999617524.html";
c[5] = "http://piza2.2ch.net/tech/kako/994/994908590.html";
c[4] = "http://piza.2ch.net/tech/kako/992/992357382.html";
c[3] = "http://piza.2ch.net/tech/kako/989/989929288.html";
c[2] = "http://piza.2ch.net/tech/kako/979/979529893.html";
c[1] = "http://piza.2ch.net/tech/kako/967/967985026.html";
/* c[0]はタイトルで初期化済み */
0992デフォルトの名無しさんNGNG
>>988
俺に聞けは嫌だ。
C言語相談室にして。
0993デフォルトの名無しさんNGNG
do {
} while (...);
の本体も、文が1つのときは{}を外したほうが良いのでしょうか?
0994デフォルトの名無しさんNGNG
>>993
そのほうが見やすければそうしてください
0995デフォルトの名無しさんNGNG
>>988
俺に聞けは嫌だ。
C言語論争所にして。
0996デフォルトの名無しさんNGNG
相談室だけはやめてくれ
0997デフォルトの名無しさんNGNG
個人的には、一行で収まるときは{}をつけないことが多い。
do whileはちと微妙。
0998デフォルトの名無しさんNGNG
1000
0999デフォルトの名無しさんNGNG
1000
1000デフォルトの名無しさんNGNG
>>985
一人でやっている奴には一生分からない。
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。