[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 05/09 13:42 / Filesize : 213 KB / Number-of Response : 830
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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

C言語なら俺に聞け(入門篇) Part 27



1 名前:デフォルトの名無しさん [2008/04/29(火) 09:44:57 ]
言語の入門者向け解説スレです。
・C++言語はスレ違いです。
・分からない事をなるべく詳しく書いて下さい。
・ソースコードを晒すと答えやすくなるかもしれません。
・質問者は最初にその質問をした時のレス番号を名前欄に書いて下さい。

前スレ
C言語なら俺に聞け(入門篇) Part 26
pc11.2ch.net/test/read.cgi/tech/1206196600/
過去スレ
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++の宿題を片付けます 105代目
pc11.2ch.net/test/read.cgi/tech/1208268461/


82 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 23:47:22 ]
おまえら優しいな・・・・・・・

83 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 23:55:01 ]
>>79
では史上最初に出現したアルゴリズムを追体験してみましょうか。
「a = 1190, b = 1394 とおき、a, b の最大公約数を求めよ。」

84 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 23:57:07 ]
最大って存在すんの?

85 名前:79 mailto:sage [2008/04/30(水) 23:59:06 ]
>>81 >>83さん早速のレスありがとう御座います

早速がんばってみます

86 名前:デフォルトの名無しさん mailto:sage [2008/04/30(水) 23:59:53 ]
>>79
朝だったら、おはよう。昼だったらこんにちは、夜だったら今晩は、夜中だったっら、おやすみなさい明日はオハヨウって表示するように改造するんだ。


87 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:11:06 ]
っつか、素数を1〜2^32 -1 の範囲内で求めよ。
むっちゃ時間かかるで?w

88 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:13:47 ]
配列サイズの決め撃ち禁止するなら
とりあえず deque の実装からはじめないとな

89 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:14:29 ]
別に両端に追加できなくても最後に追加さえできればいいじゃん

90 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:16:17 ]
dequeである必要は無いだろ
まずは単方向リストだろ



91 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:23:30 ]
配列リストだな。
つーか効率的に実装したスタック?

92 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:24:22 ]
俺はチムポラリーファイルを使わせてもらうぜ

93 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:30:38 ]
>>92
サイズ足りなすぎw

94 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:35:27 ]
その前に書き込み保護されて書き込めません

95 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:57:12 ]
>>65
そう、でも宿題スレではその実力のほどが露呈されてしまったので、さすがに出てこなくなったようです。
出したり引っ込めたり、くだらないソースなのに一人芝居をうじうじしていているのをみて、期限きって答えを書いてやりました。
無論、宿題スレでバンバン答えを出していただけるのであれば、歓迎します。

96 名前:デフォルトの名無しさん [2008/05/01(木) 00:58:24 ]
>>95
お前がまともに答える能力がなく、コピペに反応して必死になっていた
基地外ですって自己紹介乙w

97 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 00:59:18 ]
>>95
> 期限きって答えを書いてやりました。
もろにあのときに、ソースを書くわけでもなく噛み付いていただけの
無能ですって露呈しているのがお前なのがワロスw

98 名前:79 mailto:sage [2008/05/01(木) 01:00:33 ]
>>83さんできました。1時間以上かかりましたorz
#include <stdio.h>
main()
{
int a=1190,b=1394,c=-1;
while(c !=0){
c=b%a;
b=a;
a=c;
}
printf("最大公約数=%d",b);
}

>>81さん、>>87さんのはハードル高そうなので
次は>>86さんのをやって見ます

板汚しスイマセン

99 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 01:05:50 ]
>>95 = EOFに関してナンバーサインに加担していたバカ
pc11.2ch.net/test/read.cgi/tech/1208268461/103
pc11.2ch.net/test/read.cgi/tech/1208268461/139
pc11.2ch.net/test/read.cgi/tech/1208268461/141
pc11.2ch.net/test/read.cgi/tech/1208268461/249
pc11.2ch.net/test/read.cgi/tech/1208268461/404
pc11.2ch.net/test/read.cgi/tech/1208268461/407

分かるだろ?大学で実験もしたこともない低レベル共。
お前ら笑われるぞ、コードだけでプログラミングできたとか言ってるとw

100 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 01:09:50 ]
>>95
お前が糞だから無能を露呈しないためにも、簡単な答えの分かりきった
宿題しか答えられい、実力なきクズだとばれているから。
その言動にお前のレベルの低さが露呈されてますよw



101 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 01:24:09 ]
>>95 ん?もう終わりか?威勢が良くないな、ヘタレ小心者。
お前みたいな奴は、一生まともにはなれんよ。思い上がりの前に
気に入らなきゃ誰それ構わず、自分が間違っていようが多勢に無勢で
攻撃をするから失敗するんだよ。まぁ、もちっと人間社会の人間慣れをするんだな。
所詮誰でも自分なんて数多くいる人間の中の一人。
どんな偉人でも完璧な人はいない。ましてや、こんなスレで初心者相手に
自分は相手が知らないことを知っているということで、安心しているようじゃ
先が知れてる。自分が知らない、体験したことがないことなんていくらでもあるが
こんなの基本は分かりきっていることだろ。その基本事項を用いた説明に対して
自分の体験談や思い込みで反論するから、簡単に跳ね返されるんだよ。
お前じゃ、炭素とダイヤが同じ成分で構成されていることすら知らんだろうよ。そんなもん。

102 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 01:50:00 ]
>>98
結構前にこのスレだかで見た気がするが「projectEuler」とやらをやればいいじゃない
C言語というよりアルゴリズム、数学の問題だが

103 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 01:50:01 ]
>気に入らなきゃ誰それ構わず、自分が間違っていようが多勢に無勢で
>攻撃をするから失敗するんだよ。まぁ、もちっと人間社会の人間慣れをするんだな。
自分のことだろw

104 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 02:02:32 ]
相手してるやつのほうがうぜえよ
放置しろ

105 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 03:41:09 ]
>>103
基地外馬鹿が、その程度の反論しかできないのか、お前性格が腐ってんぞ。
自分のしたレスを読み返せ、こぴぺに反応した馬鹿w

106 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 05:14:50 ]
>>95
> 期限きって答えを書いてやりました。
期限が延長していたわけだが、どこに噛み付いてだこの基地外?

107 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 09:44:33 ]
宿題スレで延々と続けたスレ違いを、このスレでもやろうというのか
別の場所でやれ

108 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 10:37:34 ]
>>107
すみません。

109 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 10:38:16 ]
>>107
申し訳ありませんでした

110 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 10:40:21 ]
>>107
ごめんなさい。



111 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 13:01:29 ]
型の違うものの配列ってどうやって実装するの?

112 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 13:10:57 ]
void* array[]

113 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 13:45:52 ]
>>111
普通は共用体の配列(場合によっては、データを保存するための共用体と型を記憶するためのフラグ変数をセットにした構造体の配列)を使う
型のサイズが極端に不ぞろいでメモリを節約したい場合にはvoid *の配列を作って各配列要素に適切な領域を割り当てる

114 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 13:53:21 ]
>>107 最初に蒸し返した >>103  >>95  お前が言うなよw

115 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 13:57:03 ]
>>107=>>103=>>95だったのか。
IDでない板は自演が楽でいいな。

116 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 14:17:46 ]
強制IDのところへ移動してやったらどうかね?

117 名前:デフォルトの名無しさん [2008/05/01(木) 15:44:09 ]
質問です。
初歩的なことですいません。

親関数から子関数にとんだときに子関数がreturnしたら親関数も一緒にreturnすることってできますか?

例えば、、、

void func(void)
{
sub();

いろいろな処理;

return;
}

void sub(void)
{
return;
}

となったときに
『いろいろな処理』を行わないでfunc関数を終了したいのです。
適当に作った関数なのでそこの突っ込みはなしてお願いします。

subに値を返させてfunc関数内でsubを呼び出した後にif文で処理するのが
オーソドックスなのかと思いますが、
func内でif文を追加できない状況です。
exitも全て終了してしますのでダメです。

よろしくお願いします。

118 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 15:46:58 ]
longjmp するくらいしかないんじゃないか?

119 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 15:47:39 ]
func内にifが追加できない状況ってのがよくわからん。
っていうか、その例だといろいろな処理は常に実行されないってこと?

120 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 15:48:24 ]
void func(void)
{
sub();

いろいろな処理;

return;
}



void func(void)
{
sub();

/*いろいろな処理;*/

return;
}



121 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 15:49:27 ]
多分 func がライブラリで提供される関数で、
sub をコールバック関数として渡すんじゃないかと思われ。

122 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 15:52:02 ]
だと仮定するとsubでスタックをいじるとかあやしい事するしかなくね
あるいはコードを直接書き換えるか

123 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 15:59:59 ]
jmp_buf env;

を作って、func を使う部分を

if (! setjmp(env)) func();

とし、sub 内で return する代わりに

longjmp(env, 1);

とする。
これで一応目的の動作にはなる。
それでいいのかどうかは知らんが。

124 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 17:20:34 ]
func()呼ばずにsub()呼べばいいだけじゃ

125 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 17:38:07 ]
>124に1票

あるいは、sub()の後の"いろいろな処理"を別メソッドにして、func()呼び出している側がそれを呼び分ける


126 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 17:42:41 ]
>>112,113
おk
試してみる
void*の配列のほうが汎用性が高そうだけど型キャストがめんどくさそうだ


127 名前:デフォルトの名無しさん [2008/05/01(木) 19:30:02 ]
>>121 - 125
回答ありがとうございます。
正直言いますと自分の設計ミスなんですが、上の例で言いますと、
func関数内でsubに引数与えて(例では引数ありませんが)何回も呼び出してるんですよ。
で、subはエラーを返すんですが、funcに返ってきた時点でエラーならさらに上の関数に戻りたい。
しかし、subを呼び出す度にif文処理をするのが妥当なんですが、時間もかかるので、
もし何か良いやり方があったら教わろうとしたわけです。

jmp関数はgoto文と似ていますね。
goto文は使わない方が良いと言われていますがやはりjmpもできる限り使わない方が良いんですか?


128 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 19:40:57 ]
>時間もかかるので
そんなことを気にしなきゃならないような状況なら
悪いことはいわないから設計からやりなおせ

129 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 19:42:38 ]
せいぜい、整数の判定をかけるだけのif文はさむよりも
longjmpにかかるコストのほうがでかいなんてことにならないようにな

130 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 19:53:06 ]
if文処理するのが妥当なの分かってるんならif文で処理しろw



131 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:07:17 ]
直せるけど面倒臭いだけかよ!

C限定じゃなければsub()で例外スローして終了なんだけど
涙目でsubの呼び出し箇所をひとつづつ修正していくんだ

132 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 21:58:00 ]
素直にfunc()の設計しなおしをお勧めするね。

133 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:03:20 ]
>>98
OK です。記述方法はいろいろありますが、いずれまた、この問題にもどることになると思います。

>>114
>>67=>>83=>>95=>>108

134 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:16:15 ]
>>133
誰がいつすべてのファイルにEOFがあると言ったん?
お前の勘違いの方がアホだろ・・・あのね、思い込みで
話をこじらせるな。EOFの入力について。
もうね、お前みたいな 入力 の基本も知らない奴にバカ呼ばわりされたくねーから
最終的には、やはり学んだ場所、学歴が重要だってわかったわ。
いくら優秀なドライバーでも事故が起きれば終わりだしな。そんなもんだぞ、人生は。

135 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:17:30 ]
で、あのプログラムにおいて、EOFを入力させると無限ループするってトラブルが
対処されていなかったという、穴があったという話で、良くここまでしつこく粘着が出来るな。
マジきめぇよ、お前。性格狂ってんな。絶対に社会に出てくるなよ。お前みたいな奴は
何をしでかすか分からないからw

136 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:19:24 ]



  終


137 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:19:41 ]
>>67
> #define で複数行にわたるときの書き方をしらないあなたに何を言われてもねぇ。
言った覚えねーわ・・・なんだこいつ?妄想癖があるのか?マジきめぇ、あぁきめぇ
どんな面してんだろ?鏡見てこいよ、それ、お前の面だから m9(^д^)

138 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:21:51 ]
>>95
> その実力のほどが露呈されてしまったので、さすがに出てこなくなったようです。
お前の実力がしょぼいから、そうやって個人叩きしか出来ないか
資料を調べて必死に抵抗することしか出来ないんだろ?w
なんだよ、EOFがあるないを無理やり論点に持ち込む奴って?w
まるで、自分が違反をしても、他にも違反している奴がいるとか
あっ、俺に対して違反だといったお前、今違反しましたね?みたいな
ガキが小学生レベルの知能だな、こいつw

139 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:23:15 ]
(∩. ゚д゚)アーアー聞こえない

140 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:31:21 ]
質問です。
文字列の配列を直接引数として関数にわたしたいんですが、
引数の型定義はどのようにすればいいのでしょうか?
具体的には、

void function(??? data){
 ...
}

int main(void){
 char mojimoji[10][80];
 function(mojimoji);
}

といった感じで、???のところがわかりません。
"char *"、"char **"では駄目でした。
よろしくお願いします。



141 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:35:31 ]
そういや、昔ASCII以外にもEBCDICがあったとか、んじゃお前は今更
それを使うのかと?なぁ、時代遅れのオッサンがここでのさばってんの?
インターネットを最近知ったとかで?今更古い手法に合わせてプログラミングをするの?
ねぇ?教えて、EOFがなかった時代を知っているプロさん?
っつか、ろくにコードを書かない奴ほど、ぎゃーぎゃーわめくよな、自治厨みたく。
実力云々以前に、他人の粗探しをして楽しいのか、こいつ?

142 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:35:46 ]
char data[10][80]

143 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:37:40 ]
void function(char * data){
}

int main(void){
 char mojimoji[10][80];
 function((char *)mojimoji);
}


mainは変えずに
void function(char (*data)[80])
void function(char data[][80])


144 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:41:32 ]
原則的にはchar data[][80]

145 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 22:49:02 ]
まぁ、ファイルにEOFがあろうがなかろうが、キーボードからの入力だから。
ナンバーサインはEOFの入力が出来ないとかほざいてただろ。
印字可能な文字ではないにしろ、代用の入力文字はあるというのに。
お互い様とは言わないが、粗探しする前に本題に目を向けてくれ。
入力とは、信号やデータなどを機器へ取り込むこと全般。その形式、手法は様々。

146 名前:140 mailto:sage [2008/05/01(木) 23:00:51 ]
>>142-144
ありがとうございます。
早速明日やってみます!

147 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 23:46:09 ]
C言語でURLの一部でブラウザを振り分けるプログラムを作りたいんですが、
プログラム内から、他の実行ファイルに引数を渡して実行するにはどうすればいいんでしょうか

コマンドプロンプトだと
C:\Program Files\Internet Explorer>iexplore ***/
と同等の事をCでやりたいのですが

148 名前:デフォルトの名無しさん mailto:sage [2008/05/01(木) 23:50:33 ]
>>145
んん? EOF はファイルにあるのではなくファイルの終わりをみて返されるものだよね?
EOF (-1) は char でなく int で受けないと処理系で(俺は行ってる、俺は行かない)みたいな不毛な会話が飛び交ったりするし。
ま、なにか EOF の扱いで随分と迷走してる気はするな。そう、粘着するレベルのものではないよ。前にすすもうよ。

149 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 00:05:29 ]
>>147
C言語の話としてやるならsystem()使えで終
実際にはWinAPIのShellExecute()を使うことになるだろう
詳しくはAPIスレで聞け

150 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 00:21:27 ]
>>149
ありがとう
APIの事はほとんど分からんのでとりあえずsystemとやらを使って作ってみます



151 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 00:25:08 ]
system はセキュリティ上の問題があるからな。
一応そこんとこは分かった上でよろ。

152 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 02:11:28 ]
>>148
だからそのコードをキーボードから入力することについての話だったんだが・・・
何ごちゃごちゃその定義にまで話を持ち込もうとしてんだ???
お前ってさぁ、自分のステータスは良くなくても、所有している
スポーツカーがかっこいいだろ?乗るかい?って乗った女性を
家までさらっていくタイプだろ?目的がちがーうって振られるタイプでしょ?

153 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 02:19:13 ]
スレ違い

154 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 02:25:20 ]
ttp://www.google.co.jp/search?q=EOF%E3%80%80%E5%85%A5%E5%8A%9B&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t
EOFの入力は余裕で可能です、ありがとうございますた。

155 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 02:36:35 ]
入力の終わりを通知することを「EOFを入力する」と定めるなら、余裕で可能です。

156 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 02:47:55 ]
この前だってそういう話で終わったじゃないか。

157 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 03:01:33 ]
荒らしに付き合うやつも荒らし
キチガイに付き合うやつもキチガイ

158 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 03:38:01 ]
getchar()が云々はどうでも良い。キーボードから入力が可能です
当然EOFコードを検出するのに、ファイルの終わりを示している
コードを使うのもありです、本当に本当に、重ね重ね、ありがとうございますた!

159 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 09:40:33 ]
□!!!これを見た貴方は3日以内に死にます!!!■
■死にたくなければ、このレスをコピーして他のスレに □
□10回貼り付けて下さい。1時間以内にです!もし無 ■
■した場合は、今日寝ている間に富子さんがやってきて□
□貴方の首を絞めに来ます。富子さんは太平洋戦争の■
■時に16歳という若さで亡くなった女の子で、未だに成 □
□仏していないそうです。信じる信じないは貴方次第。 ■
■今年になってからこのレスを無視した人で、“呪われ □
□て死亡した人”が続出しています。これは富子さんの ■
■呪い。呪われて死んでもいいのならこれを無視するこ□
□とでしょうね。                        ■
■――貴方がこうしているうちに富子さんが後ろから見□
□ていますよ…。                       ■
■□■□■□■□■□■□■□■□■□■□■□■□

160 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 11:08:02 ]
おまえらがくだらん煽りあいをしてると初心者の人が質問しにくいだろ



161 名前:その1は宿題スレね mailto:sage [2008/05/02(金) 11:30:28 ]
どうせここは隔離スレ(その2)だからどうでもいいよ。

162 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 21:51:56 ]
一つ目のウィンドウにHello、二つ目のウィンドウにWorld を表示させるにはどうすればいいんでしょう?

163 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 21:53:07 ]
レベル7のエスパーを求む!

164 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 21:53:47 ]
>>152
何か切れてる? Unixなら伝統的に ^D = EOF
そそ、だからといって通常に ^D (0x04) が現れても EOF にはならないよ。
とにかくファイルに EOF というコードが有ると勘違いしるのかとおもった。

>>160 おっと、すまん。そのとおりだ。

165 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 22:07:28 ]
>>164
どのOSならとかどーでも良いんじゃい(竹原風に)
キーボードからの入力は可能だし、EOFはマクロで値が定義されているし
なんならそれに応じた入力をしてやりゃ良いんだよ。所詮俺らが視覚的に
見えているものは、デジタルデータ、0と1の組み合わせの符号、信号。

166 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 22:52:18 ]
配列の宣言時に[]の中に変数って使えないんだっけ?
char num[sum];
みたいな

167 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 22:52:54 ]
>>166
C99じゃあるまいし

168 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 22:54:49 ]
>>163
すまない。俺はまだレベル6だ

169 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:02:16 ]
つまりC99では使えると

170 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:06:20 ]
「可変長配列」この辺かな
ttp://seclan.dll.jp/c99d/c99d04.htm#dt19990719



171 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:14:11 ]
>>170
そのページのsizeofのところでふいたw
図からわかるようにって、代入しただけで何がわかるんだよ

172 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:16:40 ]
>>171
図の中のコメントに代入されるはずの値が書いてあるから
それを見ろということだろ。

173 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:23:54 ]
>>166
結論からいうと変数は使えない・・・ので malloc alloc がある。

char* num = (char*)malloc(num*sizeof(char));
...
*(num+5) = 5; // or num[5] = 0; // みたいな...
...
free(num);


174 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:26:19 ]
C99では使えるっつーの。

175 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:32:18 ]
>>165
どうも何かごかいしているね。
EOF = (-1) が定義されているとしてこの -1 は入力できない値(int)なのよ。getchar() などが EOF と判断した条件の時に文字として存在しない値 (int)-1 0xffff あるいは 0xffffffff が返されるものなのだから。。。判るかな?

176 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:37:27 ]
>>175
君ね、いい加減鬱陶しい。マクロを知らないのか?所詮、プログラム言語も仕様も
人間が都合よく定義、規格化しているだけ。EOFがどうとかどうでも良いんじゃい。
所詮 数値データ だと何度も言っているだろ。あとはマクロを使うことで
より幅広い環境で通用するという話。いい加減、大学にも通ってないような
低レベルとは話はしたくないんで。

177 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:38:13 ]
>>174
使えた。

178 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:39:06 ]
>>175
> この -1 は入力できない値(int)なのよ
これだけ取り出しても、こいつが相当な勘違い野郎だということがはっきりしたな。
入力の意味も広義で説明されていたというのに。ねぇ、こういう知ったかが
どこか政府が運営する機関の関係者にいたらどう思う?マジでやべーよ。
まぁ、こんな似非理系は当然、専門学校程度だろうけど。

179 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:46:30 ]
ttp://www.google.co.jp/search?q=EOF%E3%80%80%E5%85%A5%E5%8A%9B&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t
EOFの入力は余裕で可能です、ありがとうございますた。

180 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:47:14 ]
>>172
コメントの数字が正しいことはどうやって証明するんだよw



181 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:48:12 ]
>>180


182 名前:デフォルトの名無しさん mailto:sage [2008/05/02(金) 23:50:47 ]
プログラムが扱う変数として、EOFの数値データをchar型などで扱うかまで
入力受付のライブラリを用いて話をするが、while(getchar()!=EOF); で
ループを止める際に、どうやって止めたいんだい、プログラムは?w
論点はそこじゃない。EOFが入力可能か?答えはYES。適切に処理しない
環境をいちいち持ち出されても迷惑。256色しか表現できない環境で
24ビット画像を正確に表示しようとしても無理なようにね。
くどいが、こんな目の前にある機械なんて、所詮人間がルール(規格)を決めて
定義されたとおりにコンピュータがデータを実装された能力に応じて
展開しているに過ぎない、人間が都合よく解釈できるように。
コンピュータには目の前の文字も画像も映像データも、0と1の塊にしか見えんよ。
あとは規則に則って処理しているだけ。






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

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

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