C言語なら俺に聞け! Part 60
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
NGNG質問する前には最低限検索を。
GUIなどの標準Cではできない事の質問は使用している開発環境のスレへGo! (←ここ注目)
ソース丸投げ、宿題、書籍 は専門の別スレがあるのでそこへさようなら。
コンパイラを探しているなら >>2-13 を。
C machineはCに非ず
上記を逸した場合の結果は激しく未定義だYO!
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言語なら俺に聞け! Part 〈58〉
http://pc2.2ch.net/test/read.cgi/tech/1056109884/
http://www.darkcat.on.arena.ne.jp/cgi-bin/dknbbs2/bbs.cgi?usr=hello_world82563#
0002デフォルトの名無しさん
NGNGgcc
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
0003955
NGNG乙
0004デフォルトの名無しさん
NGNG何冊本を読んでも、何回検索して調べても分かりません。
簡単に説明してもらえませんか?
0005デフォルトの名無しさん
NGNG呼び出し元へ戻る
0006デフォルトの名無しさん
NGNG呼び出し元へ戻る
00074
NGNGreturn 0;や
return a;
の時のときもですよね?
0008デフォルトの名無しさん
NGNGそうだ。
00094
NGNG0010デフォルトの名無しさん
NGNGその関数を呼び出したところへ
00114
NGNGでもそれも気になるけど・・
00124
NGNG0013デフォルトの名無しさん
NGNGmain関数から戻れば
00144
NGNG00154
NGNG0016デフォルトの名無しさん
NGNGos
00174
NGNG00184
NGNG0019デフォルトの名無しさん
NGNG00204
NGNGreturn a;なら・・・
00214
NGNGmainからのreturnは。
0022returnの住民
NGNG漏れたちreturnを使うんじゃない。
めんどくさいんだよ。いちいち戻るのが。
0023デフォルトの名無しさん
NGNG0024デフォルトの名無しさん
NGNGと ) | |
Y /ノ 人
/ ) < >__Λ∩
_/し' //. V`Д´)/
(_フ彡 / ←>>23
0025returnの住民
NGNG00264
NGNG0027デフォルトの名無しさん
NGNGその程度調べられないんじゃ、もうやめとけ。
勉強するだけ無駄!!
0028デフォルトの名無しさん
NGNG伝家の宝刀「longjmp」
00294
NGNG0030デフォルトの名無しさん
NGNG本読んでもreturnが分からないようじゃ
プログラムはやめたほうがいいね!
00314
NGNG覚えておけばいいでしょうだとさ
0032デフォルトの名無しさん
NGNGその通り
size_t strlen(const char *str)
{
for(;*str;str++)
;
return 0;
}
00334
NGNGプログラミングは続けるけどね!
0034デフォルトの名無しさん
NGNG00354
NGNG0036デフォルトの名無しさん
NGNG0037デフォルトの名無しさん
NGNG00384
NGNG0039デフォルトの名無しさん
NGNG0040デフォルトの名無しさん
NGNG00414
NGNG0042デフォルトの名無しさん
NGNGピュ.ー ( ゜∇゜ )つ <>>41 文字の配列という考えしかないようです(゜∇゜)/
=〔~∪ ̄ ̄〕 「ウンマンコ」
= ◎――◎
00434
NGNGchar moji[100];
moji = "abc";
0044デフォルトの名無しさん
NGNGピュ.ー ( ゜∇゜ )つ <いや、ですから moji[0]='a' とかしないと・・(゜∇゜)/
=〔~∪ ̄ ̄〕 「ウンマンコ」
= ◎――◎
00454
NGNGif ( a < x < b ) {
...
} else {
...
}
0046デフォルトの名無しさん
NGNGならいけるよ
0047デフォルトの名無しさん
NGNGコンパイルエラーの予感
0048デフォルトの名無しさん
NGNG∧∧Λ
ピュ.ー ( ゜∇゜ )つ <いや、ですから a<x&&x<b とかしないと・・(゜∇゜)/
=〔~∪ ̄ ̄〕 「ウンマンコ」
= ◎――◎
004947
NGNG0050デフォルトの名無しさん
NGNGchar moji[]="abc";
0051デフォルトの名無しさん
NGNGアホだ
if ( a < x < b ) ×
if ( a<x && x<b ) ○
00524
NGNG005347
NGNGdouble d="abc";ではエラーだしな。
0054デフォルトの名無しさん
NGNGわざとか!
00554
NGNG0056デフォルトの名無しさん
NGNGキャストすれば?
0057デフォルトの名無しさん
NGNGって、
(a<x) < b
と等価だっけ?
00584
NGNGvoid func(int a, int b, int c)
printf("%d, %d, %d", a, b, c);
}
a = 0;
func(++a, ++a, ++a);
0059デフォルトの名無しさん
NGNG0060デフォルトの名無しさん
NGNGもうそろそろ、ネタはやめようよ
0061デフォルトの名無しさん
NGNG頼む
0062デフォルトの名無しさん
NGNG了解。試してみる。
00634
NGNGここまでテンプレ
0064デフォルトの名無しさん
NGNG0065デフォルトの名無しさん
NGNGスレ削除依頼出すなら良いけど
そうじゃないなら、立てちゃ駄目だよ
0066デフォルトの名無しさん
NGNG0067デフォルトの名無しさん
NGNGよくあることだ。おおらかにいこう。
00684
NGNG0069デフォルトの名無しさん
NGNG俺は4を騙ってないし、常識的な事を言ってるだけだが?
0070デフォルトの名無しさん
NGNG0071デフォルトの名無しさん
NGNG・・・;
・・・;
if (!fp) {
printf("%sが開けません。\n", path);
exit(EXIT_FAILURE);
}
・・・;
・・・;
で、終了しちゃった場合、mallocで確保された領域は
どうなるんでしょうか?
0072デフォルトの名無しさん
NGNGもし、解放されるとしたら解放しない気でつか?
00734
NGNGosが開放します。
0074デフォルトの名無しさん
NGNGだから、もうネタは良いんだって
007571
NGNGさもないと本当にあなたたちを無知だと見なしますよ。
007671
NGNG即レス有り難う御座います。
>>72
同じ関数内なら忘れず解放するんですが
他で確保してる領域はどうなるのかと
思いまして・・・。
>>4
OSが解放してくれるんですか
今夜は熟睡できそうでつ
有り難う御座いました。
00794
NGNG俺のせいですごいことになってしまった。
俺ってすごい釣り師?
反省してます。
0080デフォルトの名無しさん
NGNG>73が正しい
0081デフォルトの名無しさん
NGNG0082デフォルトの名無しさん
NGNG00834
NGNG0084デフォルトの名無しさん
NGNGマジレスすると、解放するのはOSとは限らないし(そもそもOSが無いとか)
atexit()とか使ってると、exit()で終了するとも限らない
00854
NGNG008649&4
NGNGこんなにつれたのはじめてでつ
00874
NGNG0088デフォルトの名無しさん
NGNG008971
NGNGそっそうですか、取り敢えず
回収してくれるんですね。
>>84
atexit()は知りませんでした。
標準ライブラリも奥が深い。
精進しまつ。
有り難う御座いました。
0090デフォルトの名無しさん
NGNG他に再起が必要な場面ってありますか?
0091デフォルトの名無しさん
NGNGfcloseは自動的に行われることになっているが
freeが自動的に行われるとはどこにも書いてないぞ
ここ重要
↓
だから自分で調べろと言うのだ
規格票なり作者の発言なり1次情報にアクセスしろ
伝聞についてくる尾ひれにはトンデモが混じってる
0092デフォルトの名無しさん
NGNG再帰を『使いたくなる』場面なら色々ある。パーサ、ディレクトリ、ソート、メッセージ、etc...
だが、あなたが聞いているのは再帰が『必要な』場面だよな。
それは『ない』。
0093デフォルトの名無しさん
NGNG0094デフォルトの名無しさん
NGNGfcloseでfreeが行われないとしたら
それはバグだろ
while(???) {
fp = fopen(???);
...
fclose(fp);
}
これができないことになる
0095たく
NGNG#include <stdio.h>
main()
{
int count = 0;
int gyo;
char file[20];
int a = count + 1 - gyo;
int b = 0;
int fp;
puts("表示したい行数を入力");
scanf("%d", gyo);
puts("表示したいファイル名を入力");
scanf("%s", file);
FILE *fp;/*ファイルポインタ*/
char buffer[500];
if((fp = fopen(file, "r")) == NULL)
{
puts("read open error");
return(-1);
}
次に続く
0096デフォルトの名無しさん
NGNGfcloseを呼ばずに終了した場合の話
0097たく
NGNG{
count++;
}
if(fclose(fp) == EOF)
{
puts("Close error");
return(-1);
}
if((fp = fopen(file, "r")) == NULL)
{
puts("read open error");
return(-1);
} 次に続く
0098たく
NGNG{
if(b >= a)
{
printf("%s\n", buffer);
}
b++;
}
if(fclose(fp) == EOF)
{
puts("Close error");
return(-1);
}
return 1;
}次に続く
0099たく
NGNGhead.c 18: Warning: 'gyo' used before set
head.c 27: Warning: 'fp' used before set
head.c 27: illegal type combination (*)
head.c 29: syntax error near 'char'
head.c 29: 'buffer' undefined
head.c 31: Warning: illegal pointer combination (=)
head.c 37: 'buffer' undefined
head.c 37: Warning: illegal pointer combination (param)
head.c 43: Warning: illegal pointer combination (param)
head.c 49: Warning: illegal pointer combination (=)
head.c 55: 'buffer' undefined
head.c 55: Warning: illegal pointer combination (param)
head.c 59: 'buffer' undefined
head.c 67: Warning: illegal pointer combination (param)
0100デフォルトの名無しさん
NGNGfopenしたストリームを閉じるのに
直接にも間接にもfcloseを使わないってことか
仮にそういう実装があったにしても
そういう実装をする者がfcloseを使った場合と
同等の結果を保証することに全責任を負うべきだ
0101デフォルトの名無しさん
NGNGこのときのaがいくつになることを『意図している』?
万が一、この問いに答えられないようなら
コードを書き始めたこと自体が間違っている。
この場合は設計に戻るべき。
0102デフォルトの名無しさん
NGNG0103たく
NGNG最後の行からさかのぼって出力することを目的に書きました。
int a = count + 1 - gyo;
はb>aのときから表示させることにより
最後の行からさかのぼって指定された行を表示させようとしています。
if(b >= a)
{
printf("%s\n", buffer);
0104デフォルトの名無しさん
NGNGだから、具体的にいくつだよ?
エラーメッセージがそうなってるだろ
0105デフォルトの名無しさん
NGNG自動変数はきちんとプログラマが値を入れてやらないと何が入るか分からないよ。
> 'gyo' used before set
これはgyoに値をセットする前に使ったという意味。
0106デフォルトの名無しさん
NGNG0107デフォルトの名無しさん
NGNG0108デフォルトの名無しさん
NGNGISOやIEEEの原文が読めないと勝負にならん
0109デフォルトの名無しさん
NGNGリンクスタッフになれば小遣い稼ぎができます!!(左下に詳しい説明があります)
[報酬について]
クリック報酬・・・1クリックされる度に10円の報酬
バナー紹介料・・・リンクスタッフ登録の度に1000円の報酬
キャンペーン・・・今なら登録するだけで1000円プレゼント
間接報酬・・・紹介者が得た報酬の25%を加算いたします
プレミアム・・・優秀サイトには、報酬に応じてボーナス有り
単純に考えて1日100人クリックしたとすると、100人×10円×30日=30000円(一ヶ月)
そこらへんの掲示板に貼り付けていけば100クリックなんてスグです。
その他、自分の貼り付けた広告から誰かがスタッフになると1000円もらえるので
1日5人スタッフを紹介できたとして1000×5×30=150000円
30000+15000=180000!!間接報酬などもありますのでどんなに悪くても一ヶ月に10万円以上は必ず稼げます!!
http://www.santa.ac/~comtec/linkstaff/cgi/click.cgi?id=3007
ぜひ一度覗いて見てはいかがでしょうか?
0110デフォルトの名無しさん
NGNG0111デフォルトの名無しさん
NGNGこの宣言を見た時、「ギョ」って何?
とオモタ。
素直に「line」にしようよ(w
0112デフォルトの名無しさん
NGNG0113デフォルトの名無しさん
NGNG教えてください!
0114たく
NGNGとりあえず直したのですが、
fpとaを定義したにもかかわらす以下のようなメッセージが出ます。
どこが間違っているか教えてください。
head.c 18: 'fp' undefined
head.c 20: 'fp' undefined
head.c 26: 'fp' undefined
head.c 30: syntax error near 'int'
head.c 30: 'a' undefined
head.c 32: 'fp' undefined
head.c 38: 'fp' undefined
head.c 44: 'fp' undefined
head.c 46: 'a' undefined
head.c 56: 'fp' undefined
0115たく
NGNGmain()
{
int count = 0;
int gyo;
char file[20];
int b = 0;
char buffer[500];
puts("表示したい行数を入力");
scanf("%d", &gyo);
puts("表示したいファイル名を入力");
scanf("%s", file);
0116たく
NGNGif((fp = fopen(file, "r")) == NULL)
{
puts("read open error");
return(-1);
}
while((fgets(buffer, 500, fp) != NULL))
{
count++;
}
int a = count - gyo + 1;
0117たく
NGNG{
puts("Close error");
return(-1);
}
if((fp = fopen(file, "r")) == NULL)
{
puts("read open error");
return(-1);
}
0118たく
NGNG{
if(b >= a)
{
printf("%s\n", buffer);
}
b++;
}
if(fclose(fp) == EOF)
{
puts("Close error");
return(-1);
}
return 1;
}
0119デフォルトの名無しさん
NGNG0120デフォルトの名無しさん
NGNG0121デフォルトの名無しさん
NGNG2つの変数の宣言をアタマに持って毛。
0122たく
NGNGありがとうございます。無事コンパイルと実行ができました。
所でナンデ上に持ってくだけでコンパイルできたのですか?
0123デフォルトの名無しさん
NGNG0124たく
NGNGしりませんでした。勉強になりました。
ありがとうございます。
0125たく
NGNGおまえがな!
0126120
NGNG0127FLA1Abe019.tky.mesh.ad.jp
NGNG01284=たく
NGNG0129デフォルトの名無しさん
NGNG別の意味で釣れた
0130デフォルトの名無しさん
NGNG>>50
char moji[]="abc";
はい、できますた。ここで、0から3までの4個の要素が定義されてますね。
ここで、
char moji[4]="def";
とやると、コンパイルエラーになりますが、なぜだめなのですか。
文字列配列の要素は、1文字2バイトしか使えないのですか。
0131デフォルトの名無しさん
NGNGopenという名前の関数を作ったところfopenの動作がおかしいのです。
どうしたでしょうか。
0132デフォルトの名無しさん
NGNGどうせ>>123だろ
0133デフォルトの名無しさん
NGNGsprintf(&moji[0],"def");
にしとき。
01344
NGNG0135たく
NGNGと入力し、a.cというファイルの中身を逆からさかのぼって
20行表示させようとしています。
head1.c 55: Warning: 'file' not used
と出てしまうのですがどこが悪いのでしょうか?
#include <stdio.h>
main(int argc, char *argv[])
{
FILE *fp;
int a;
int b = 0;
int count = 0;
char file[20];
char buffer[500];次に続く
0136たく
NGNG{
puts("read open error");
return(-1);
}
while((fgets(buffer, 500, fp) != NULL))
{
count++;
}
a = count - *argv[1] + 1;
if(fclose(fp) == EOF)
{
puts("Close error");
return(-1);
}次に続く
0137たく
NGNG{
puts("read open error");
return(-1);
}
while((fgets(buffer, 500, fp) != NULL))
{
if(b >= a)
{
printf("%s\n", buffer);
}
b++;
}次に続く
0138デフォルトの名無しさん
NGNG0139たく
NGNG{
puts("Close error");
return(-1);
}
return 1;
}
0140デフォルトの名無しさん
NGNGエラーになるかい?
0141デフォルトの名無しさん
NGNGchar moji[]="abc";
char moji[4]="def";
とか
int a=0;
a+=4;
char moji[4]="def";
とかやれば。
0142デフォルトの名無しさん
NGNG変数名が重複してる・・・
0143デフォルトの名無しさん
NGNGだからエラーになる。
0146デフォルトの名無しさん
NGNG丁度文字列の話が出てるので質問したいのですが
strcpyの関数を使う時の関数の宣言って何ですか?
教えてください
0147130
NGNG| >>130
| どうせ>>123だろ
そんなー、人に意見が言えるような偉い人じゃあーりません。
エラーじゃなくて警告でしたが、実行してみると、
>>138,>>140
segmenation faultだって、Cってなんでこんなにメンドイの。
0148130
NGNGちなみに漏れはawk→perlとやってます。楽でよかった。
0149132
NGNG>>123という理由でエラーになったんだろうという意味なんだが。
Segmentation Faultは別の場所で起きていると思うけど。
それと>>138は>>135へのレスだろ。多分。
0151デフォルトの名無しさん
NGNGプロトタイプ宣言 というキーワードで google
C言語の解説サイトを嫁
0153130
NGNG0154デフォルトの名無しさん
NGNG0155130
NGNGお勉強すれで紹介されている「配列とポインタの完全制覇」行って
勉強してきました。で、成果は、特にない。今晩、寝ずに考えて見末。
皆さん、ありがとうございました。ダイヤルアップなんで・・・
0156デフォルトの名無しさん
NGNG自動発言させるプログラムを作りたいのですが、
どのようにしてTABキーを押させるようにすればいいのでしょうか?
計画としては、テキストボックスまでTABで移動させて、
そこに任意のメッセージを入力、Enterキーを押させて発言させようと思っています。
超初心者的な質問ですいません。よろしくおねがいします。
0157デフォルトの名無しさん
NGNG0158デフォルトの名無しさん
NGNGアームロボット買ってきて、キーボードを押すようにプログラミングするとか。
などと言う冗談はさておき、スレ違いなんでとっとと消えましょう。
0159デフォルトの名無しさん
NGNGそれ、何の本に載ってたっけ?たしか、IBMが
「プログラムの改修にン億円かかります」とかって
答えた話だよね。
0160デフォルトの名無しさん
NGNGhttp://www.darkcat.on.arena.ne.jp/cgi-bin/dknbbs2/bbs.cgi?usr=hello_world82563#
0161貧乏脱出!これであなたはお金持ち
NGNG本当にお金持ちになるにはやはり「副収入」が必要!
一日30分 おうちでコピペ、コピペ!
嘘だと思うんならランキング見てみてくださいよ↓↓
(直リン不可)
http://www.adultshoping.com/addclickport.cgi?pid=1053353765(直リン不可)
. . . . . . . . . .
0162デフォルトの名無しさん
NGNGハード作れ
0163デフォルトの名無しさん
NGNGたとえば、あるファイルの内容が
one
two
three
だったとすると、行数は3行、1行あたりの最大文字数は5文字、ということで
struct text{
word[6]
} line[3]
と宣言したいのです(構造体になっているのは、実際は行ごとにいくつかの
単語を評価するからです)。しかし、実際にプログラムを書くと、ファイル
操作の前の段階で、word[6]やline[3]などの具体的な数字を要求されて
しまいます。ファイルの内容を読み込んでから、それに最適な構造体を
定義するには、どのようにすればよいのでしょうか。
どうかよろしくお願いします。
0164デフォルトの名無しさん
NGNG普通のやり方じゃできない。
無理やりやるならば前もって最大文字数と行数をカウントして、Cのソースを吐き出し、
コンパイルするってやり方を考えたけど、アクロバット過ぎるし実用にならんだろうなw
そういう場合は、
struct text {
char *word;
} line;
とか定義しておいて、mallocなどを使ってやりくりするしかあるまい。
0165デフォルトの名無しさん
NGNGCって不便ね。Perlなら簡単よ。
0166デフォルトの名無しさん
NGNG0167デフォルトの名無しさん
NGNG>普通のやり方じゃできない。
mallocを使った動的メモリ確保は普通では?
0168デフォルトの名無しさん
NGNG> PHPなら綺麗よ。
眼科に行きましょう。
0169163
NGNGそのようにするのですか。どうもありがとうございました。
ところで、この例について
struct text{
char word1[10];
char word2[10];
…
} line[20]
と先に決めてしまい、ファイルの内容について「20行以下、1単語につき
9文字以下」と約束をつくる、というやり方も考えました。これを一般的な
プログラミングの慣習からみると、スマートとはいえないやり方なのでしょうか?
(20行に満たなかった場合など、かなりメモリを無駄に浪費するような気が…)
0170デフォルトの名無しさん
NGNGメモリをたくさん使ってもプログラムが簡単に書けてスピードも速くなるなら
トレードオフが成立する。
むしろ20行を超えたとき動かないのがよくない。
0171デフォルトの名無しさん
NGNG構造体のメンバのサイズ固定はそこそこよくある実装だと思うが、
行数制限はよくない。構造体を必要な数だけmalloc()するくらいがよくある実装。
0172デフォルトの名無しさん
NGNGvoid main(){
int n;
char ch;
printf("数字を入力してください\n");
scanf("%d",&n);
printf("文字を入力してください\n");
scanf("%c",&ch);
printf("\n\n");
printf("入力された数字は%dです。\n",n);
printf("入力された文字は%cです。\n",ch);
}
このソース間違ってますか?途中で文字入力が
飛ばされるのですが。。
0173デフォルトの名無しさん
NGNG多分scanf("%d",&n);の時に入力した改行がscanf("%c",&ch);で拾われている
0174デフォルトの名無しさん
NGNGどこを変えたらよいでしょうか?
0175デフォルトの名無しさん
NGNGストリームのバッファならsetvbufで
0176デフォルトの名無しさん
NGNGscanf(" %c", &ch);
0177172
NGNG空白を入れるなんて思いつきませんでした。
0178デフォルトの名無しさん
NGNG釣りは帰れ
過去スレよめ
0179デフォルトの名無しさん
NGNGおっと釣られちゃったかな
0180デフォルトの名無しさん
NGNGこのサイトでCの勉強しようと思ったんですが、
サンプルコードに滅茶苦茶なのがたくさんあるんだけど、
目の錯覚ですか?
0181172
NGNG0182デフォルトの名無しさん
NGNGどこら辺よ?
0183デフォルトの名無しさん
NGNGキエテ。キエテ。キエテ。キエテ。キエテ。キエテ。
0184デフォルトの名無しさん
NGNG滅茶苦茶なのがわかってるならそのサイトに用はないだろ
素直にメールでもだして注意してやればいいだろ
晒したいなら晒したいと素直にいおうね
0185デフォルトの名無しさん
NGNG自分がでけへんことを人に言いなや (プ
0186デフォルトの名無しさん
NGNG誰かわかる人お願いします。
http://www.laser.ee.kansai-u.ac.jp/lecture/kisopro/report11.htm
0187デフォルトの名無しさん
NGNG0188デフォルトの名無しさん
NGNG作った人間の馬鹿さ加減が偲ばれるいいサイトだ。
0189デフォルトの名無しさん
NGNG例えば?
0190デフォルトの名無しさん
NGNGあるので
===終了===
0191デフォルトの名無しさん
NGNGscanf()の説明とかファイル操作関連とか、
規格をよく判っていないで書いているのがありあり。
0192デフォルトの名無しさん
NGNGそれはC++だろ
0193デフォルトの名無しさん
NGNGこのへん氏んでいい
0194なまお
NGNG0195デフォルトの名無しさん
NGNGC99
0196デフォルトの名無しさん
NGNGC99にあるよ。現実として無いも同然だけど
0197デフォルトの名無しさん
NGNG> 1972年、B.W.Kernighan氏とD.M.Ritchie氏により 考案され、
カーニハンがC言語の開発に携わったの?
0198デフォルトの名無しさん
NGNG0199デフォルトの名無しさん
NGNGなんか、Cに求められてるものとはかなり違う気がするよ。
0200デフォルトの名無しさん
NGNG0201デフォルトの名無しさん
NGNG毎年、約1万組の日韓結婚。
それに伴なう朝鮮化した混血児。
年間、日本の新生児約100万人のうち、
約1〜2万人の新生児に
容赦の無い朝鮮人の血が流し込まれている。
0202デフォルトの名無しさん
NGNG0203デフォルトの名無しさん
NGNGタコ殴りにされてた彼か。
0204なまお
NGNG0205デフォルトの名無しさん
NGNGなまおクンのサイトだったのか。懐かしい…
にしても、トップページのJavaアプレットがうざ。
http://hp.vector.co.jp/authors/VA000124/intro.html
にTeXがプログラミング言語じゃないようなこと書いてあるけど、
プログラミング言語だよなあ、あれ。
0206デフォルトの名無しさん
NGNG0207デフォルトの名無しさん
NGNG0208デフォルトの名無しさん
NGNG条件判断とか変数とかあるよ。立派なプログラミング言語。
もっともその言語仕様はこれよりクソなものを見たことないくらいクソ。
0209デフォルトの名無しさん
NGNG条件判断とか変数とかはあんま関係ないっしょ。多分。
0210デフォルトの名無しさん
NGNGVC++ではエラーになってしまいました。
この方法は使用できないのでしょうか?
typedef struct _HEADER{
int name;
}HEADER;
typedef struct _BOXA{
HEADER; //ここで中身の無い構造体エラー
int a;
}
typedef struct _BOXB{
HEADER;
int b;
}
int main(){
BOXA c;
c.name云々;
BOXB d;
d.name云々;
}
0211210
NGNG0212デフォルトの名無しさん
NGNGHEADER h;
int a;
};
とでもせんと。
0213デフォルトの名無しさん
NGNG0214デフォルトの名無しさん
NGNG型だけでメンバー名が指定されていない気が・・・
0215デフォルトの名無しさん
NGNG確かに面罵名いらんって言いたいときがある。
C++なら(ry
0216デフォルトの名無しさん
NGNGそんなことしたらメンバーにアクセスできないよ??
0217216
NGNG0218デフォルトの名無しさん
NGNG0220デフォルトの名無しさん
NGNGスレ違いだからここまでにするけど、おれもマークアップ言語だと思ってるよ。
ただプログラミング言語では全くないといわれたら、そりゃ違うだろってだけ。
0221デフォルトの名無しさん
NGNGstruct HEADER{ int name };
struct BOXA : public HEADER{ int a };
struct BOXB : public BOXA{int b};
とか(邪悪やなぁ)。
0222デフォルトの名無しさん
NGNGchar *p
typedef struct{
MACRO1;
double d;
}KOZOTAI1;
typedef struct{
MACRO1;
int i;
}KOZOTAI2;
0223デフォルトの名無しさん
NGNG0224デフォルトの名無しさん
NGNGpublicいらんでえ
0225210
NGNG有難う御座います。
私もメンバ名が無いのは承知していて、不思議だったので、
色々調べてみたのですがどーしてもわからず、質問させていただきました。
マイクロソフトのDDKのサンプルソースにさっきの様なのが含まれていました。、
ということは、サンプルのコードが妖しいということになるのかな???
0226デフォルトの名無しさん
NGNG0227デフォルトの名無しさん
NGNG0228デフォルトの名無しさん
NGNGうん、使わなくていいよ
少なくとも君だけは永久にw
0229デフォルトの名無しさん
NGNGMSのサンプルはC++だろ不通
0230デフォルトの名無しさん
NGNG0231デフォルトの名無しさん
NGNGこういうとこ読むときと同じで
行間嫁ってことか。
わざわざ自然言語で書かにゃならんとき
つい入っちまうからな、動作確認してないソース。
0232デフォルトの名無しさん
NGNG0233デフォルトの名無しさん
NGNG0234デフォルトの名無しさん
NGNGこれ以上わかんない。どう直したらいいんでつか?省略のところも書いてほしいです。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h>
BOOL NumCheck( char *pcData, int iLen );
//呼び出しもと
int main( void )
{
BOOL t;char ten[1][7];
do{
/*省略*/
t = NumCheck( &ten[0], strlen(&ten[0]) );
}while( t == FALSE );
/*ここにatoi()でint型にする方法も教えてください*/
return 0;
}
//pcData チェックする文字列
//iLen 文字の長さ
//戻り値 TRUE:全部数字、FALSE:数字でない文字がある
BOOL NumCheck( char *pcData, int iLen )
{
int i;BOOL bRet = TRUE;
//チェックする文字数分ループ
for( i=0; i < iLen; i++ ){
//数字なら次をチェック
if( isdigit( pcData[i] ))
continue;
//数字でない文字があったのでエラーを表示して
//ループ終了
printf( "数字ではありません。再度入れ直してください。\n" );
bRet = FALSE;break;}
return bRet; //結果を返します
}
0235デフォルトの名無しさん
NGNGint suujidake(const char *str)
{
for(;*str;str++)
if(!isdigit(*str))
return 0;
return 1;
}
テストしていないし、符号も許さない。
0236デフォルトの名無しさん
NGNG2ch には意地悪なものが多いということを踏まえて、こんな感じで。
BOOL NumCheck(char *pcData)
{
if(*pcData == '\0')
return TRUE;
if(!isdigit(*pcData))
return FALSE;
return NumCheck(pcData + 1);
}
これでも別に悪くは無いけど、あんま C っぽくない。
C 風に組んだ場合のコードはヒントあげるから考えてみ。
1. 数字なら次をチェックするのではなく、
数字でなければ return FALSE; という風にすれば楽。
2. 文字列の終わりには '\0' があるので、いちいち iLen なんぞ使わんでもいい。
3. NumCheck は数値かかどうかをチェックする関数なんだから、
「再度入れ直してください」なんて出力は NumCheck にはさせない方がいい。
0237デフォルトの名無しさん
NGNG0238デフォルトの名無しさん
NGNGワラタ
意地悪だなあw
0239デフォルトの名無しさん
NGNG0240デフォルトの名無しさん
NGNG0241デフォルトの名無しさん
NGNG俺の場合
int NumCheck(char *s)
{
const char *h = s;
for(;*s;++s){
if('0'<=*s && *s <='9'){
if(*(s-1) == '-') return s - h - 1;
return s - h;
}
}
return -1;
}
int main(void)
{
char s[] = "abcd-1234abcde";
int t = NumCheck(s);
if(t<0) return 0;
printf("%d",atoi(s+t));
return 0;
}
0242デフォルトの名無しさん
NGNG> if('0'<=*s && *s <='9'){
if(isdigit(*s)){でいいと思います。
0243デフォルトの名無しさん
NGNG> if(*(s-1) == '-') return s - h - 1;
ここおかしい。
0244デフォルトの名無しさん
NGNGstrstr は検索範囲が文字列ということで先頭から 0までですが
単純に char*型のメモリから検索したいです。
for (i=0;i<100-2;i++) if (buf[i]=='a'&&buf[i+1]=='b')
上記を関数一発で行いたいですがあります?
0245デフォルトの名無しさん
NGNGない。
ただしmemcmpというのがあるからこれを使えば比較的楽に書けるんじゃないかな。
0246デフォルトの名無しさん
NGNGやはり無いですか
memcmpを一文字づつずらすしか ないですね
ありがとうございました。
0247デフォルトの名無しさん
NGNGそれだと効率悪いから、せめてmemchr()で先頭を見つけてからにしよう。
0248デフォルトの名無しさん
NGNG{
unsigned int hib, lob;
hib = (sjis >> 8) & 0xff;
lob = sjis & 0xff;
hib -= (hib <= 0x9f) ? 0x71 : 0xb1;
hib = (hib << 1) + 1;
if (lob >= 0x9e) {
lob -= 0x7e;
hib++;
}
else if (lob > 0x7f) lob -= 0x20;
else lob -= 0x1f;
hib |= 0x80;
lob |= 0x80;
return (hib << 8) | lob;
}
この関数にcharの配列を渡したいんですけど
可能ですか?
そしてどのようにすれば実現できるのでしょうか?
char hoge[80]にはハンカクカナが入っています。
厨な質問でつが宜しくご教授お願い致します。
0249デフォルトの名無しさん
NGNGここで学びましょう。
http://ranking.yi-web.com/yuugi/ranklink.cgi?id=glayid
0250デフォルトの名無しさん
NGNG無理だろう。for文使え。
0251デフォルトの名無しさん
NGNGポインターを勉強してください。
0252デフォルトの名無しさん
NGNGそもそも、その関数は半角カナに対応してない
0253デフォルトの名無しさん
NGNG分かりやすく書いてあるサイトとかってありますか?
0254デフォルトの名無しさん
NGNG0255デフォルトの名無しさん
NGNG0257名無し@沢村
NGNG0258デフォルトの名無しさん
NGNGchair
0259デフォルトの名無しさん
NGNGとりあえず標準では system 。
他に凝った事したければそれぞれの環境のスレに行くがよろし。
0260デフォルトの名無しさん
NGNG0261デフォルトの名無しさん
NGNG作成はfopenでできるようですが。
0262デフォルトの名無しさん
NGNG#include <WinLib.h>
とあったんですが、これって何ですか?
0263デフォルトの名無しさん
NGNGコンパイルに先立ってWinLib.hの中身をそこに展開する
0264デフォルトの名無しさん
NGNG0265デフォルトの名無しさん
NGNGremove
>>264
そういうファイルがあるんだろう、としか。
0266デフォルトの名無しさん
NGNGおいらが作ったエロエロライブラリのヘッダー
0267デフォルトの名無しさん
NGNGボーランドのヘッダー
0268デフォルトの名無しさん
NGNGhttp://www3.kcn.ne.jp/~barozza/
言語を英語にすると見れるんだ
0269デフォルトの名無しさん
NGNGプ
0270デフォルトの名無しさん
NGNG> printf("変数nは%x番地に確保されました\n", &n);
0271デフォルトの名無しさん
NGNG0272デフォルトの名無しさん
NGNG0273デフォルトの名無しさん
NGNG削除して空いた場所に、最後のデータを移動するのと、
後のデータを1個ずつずらすものをつくりたいです。配列は順序よく並んでいません。
デリートを使ってお願いします
0274デフォルトの名無しさん
NGNG0275273
NGNG逝ってきます
0276デフォルトの名無しさん
NGNG後者はmemmoveで。
つーかそういうものは線形リストを使うのが一般的だと思うけど。
0277デフォルトの名無しさん
NGNGなんで?
0278デフォルトの名無しさん
NGNGdelete
のことじゃないか?
0279デフォルトの名無しさん
NGNGああなるほど・・・・
じゃあ配列じゃなくてリストかなにかじゃん(配列なら丸ごと消えてしまう)・・・
0280デフォルトの名無しさん
NGNG解説サイトお願します。
0281デフォルトの名無しさん
NGNG関数に適切な引数を与えて呼ぶだけでしょ?
0282デフォルトの名無しさん
NGNG猫、MSDN
0283デフォルトの名無しさん
NGNG0284280
NGNG変えてみようと思うのですがね
0285デフォルトの名無しさん
NGNGDBのクライアント?
0286デフォルトの名無しさん
NGNG猫といって誰が何のことだと分かると思いますか?
玄人ぶるのはやめなさい。
0287デフォルトの名無しさん
NGNG0288デフォルトの名無しさん
NGNGAPIといって誰が何のAPIのことだか分かると思いますか?
玄人ぶるのはやめなさい。
0290280
NGNG「猫でもわかる・・・」ですよね
0291デフォルトの名無しさん
NGNG0292デフォルトの名無しさん
NGNG0293デフォルトの名無しさん
NGNG猫
http://www.gochomuseum.net/neko/
0294デフォルトの名無しさん
NGNGint main()や
main()、
void main(void)とか何なんですか?
違いはあるんですか?戻り値との関係はあるのですか?
0295デフォルトの名無しさん
NGNG0296デフォルトの名無しさん
NGNGhttp://black.sakura.ne.jp/~third/system/winapi/win.html
0297デフォルトの名無しさん
NGNGhensuu2 = xyz
などが書いてあるファイルを読み込んで
char hoge []= "abc"
などとする場合には、fgets で1文字づつ読んで
hensuu1 が見つかったら = の後全部を temp に入れて、
hoge = temp;
にするしかないのでしょうか?
1文字ずつ読み込ませたり、マッチングの部分を書くのは
めんどくさいのですが・・・。
perl みたいにサクッとマッチングが取れて、
必要部分を変数に代入できる方法を教えていただけると助かります。
お願いします。
0298デフォルトの名無しさん
NGNG0299デフォルトの名無しさん
NGNGfgetsで一行読み込んで、
strchrまたはstrrchrで'='の位置を取得して、それ以降をstrcpy。
無駄なブランクは適宜除いてください。
0300名無し@沢村
NGNG「猫でもわかる」は本人の頭には「ザコでもわかる」という発想があったはずだ。
だがザコというと問題があるので、「ザコ」に似た言葉「ネコ」が採用され、結局「猫でもわかる」になったものと、おれは想像している。
0301デフォルトの名無しさん
NGNGただ単に猫飼ってるだけだろ
0302デフォルトの名無しさん
NGNG相手すんなって
0303(つД`)
NGNG画像上の点Piは二次元の点で、この場合点Piで2ペアの点の中点を結んだものが
対称線となります。この線の方向ベクトルを求めるプログラムです。
どう書けばいいのか、さっぱりです。お願いします。
0304デフォルトの名無しさん
NGNGsignal は int を引数にもつ、戻り値のない関数へのポインタですよね?
しかし
void (*signal(int signum, void (*handler)(int)))(int);
という宣言の意味が分かりません。
(int signum, void (*handler)(int)) はどういう意味なんでしょうか。
0305デフォルトの名無しさん
NGNG0306297
NGNGstrchr って、1文字のマッチングでその先頭のポインタを返すのですよね。
1文字だと、他にも = が何度も出てくるファイルから読み込む場合、
使えなくないですか?
文字列(できれば正規表現)とのマッチングのできるものってないのですか?
0307デフォルトの名無しさん
NGNGhttp://endou.kir.jp/betu/linkvp2/linkvp.html
0308デフォルトの名無しさん
NGNG戻り値の型も第二引数の型もvoid (*)(int)
戻り値の型が関数ポインタだとそこまで醜くなる。
0309デフォルトの名無しさん
NGNGわらた
0310デフォルトの名無しさん
NGNG>この場合点Piで2ペアの点の中点を結んだものが対称線となります。
ここ何度読んでもわかんない。「2ペアの点」ってことは、後4つ点が出てくるの?それで対称「線」って?
>>304
signalの引数じゃないの?
0311デフォルトの名無しさん
NGNGsighandler_t signal(int,sighandler_t);
うーん・・・すっきり!
0312デフォルトの名無しさん
NGNGじゃないと俺が読めない
0313デフォルトの名無しさん
NGNGバッファ内容壊していいんなら strtok でも。
そうでないなら、何度も strchr を使って、
地道に strncpy で文字列を切り出すべし。
0314デフォルトの名無しさん
NGNG0315デフォルトの名無しさん
NGNG「あるペアの中点と、別のあるペアの中点を結ぶとできる
対称線の方向ベクトル」がほしいんじゃないの?
0316(つД`)
NGNG315さんの言うとおりです〜
説明下手ですいません_| ̄|○
0317デフォルトの名無しさん
NGNGそれってプログラムが分らないのではなく、数学のベクトルが分らないんでしょ?
typedef struct tag_vector {
float x, y;
}vector;
vector A, B, AB;
float unit;
A.x = 1.0f; A.y = 1.0f;
B.x = 4.0f; B.y = 2.0f;
//AベクトルとBベクトルを位置ベクトルとし、ABベクトルを求める
//B - A = AB
AB.x = B.x - A.x; AB.y = B.y - A.y;
//これを方向ベクトルとするには単位化が必要
unit = (AB.x * AB.x) + (AB.y * AB.y);
AB.x = AB.x / unit; AB.y = AB.y / unit;
こんな感じ。でも、君の場合数学調べた方が速いと思うよ。
0318(つД`)
NGNGありがとございましたー
0319304
NGNGようやく分かりました。
最後の (int) は引数ではなく関数 signal の戻り値
void (*)(int) を表しているんですね。。。
ありがとうございました。
0320デフォルトの名無しさん
NGNG以下のプログラムを組んでみたのですが、問題がときどき発生してしまいます。
「ときどき」発生するのがなぜなのか、また、どこが悪いのかご指摘お願いします。
#問題1、「〜手を選んでください…」のあとに「1,2,3」いずれかをタイプ、Enterを押すと、「ときどき」じゃんけんが実行されないで再度「〜手を選んで…」と出力される。
#問題2、間に敗けを挟んでいるのに、「最多連続勝ち回数」と「勝った回数」が一致していることが「ときどき」ある。
長くなってもうしわけありませんが、よろしくお願いします。
#include<stdio.h>
main()
{
int first,cpu,oni,kachi,combo,max;
kachi=0;
combo=0;
max=0;
oni=100;
srand(time(0));
//オープニング文章
printf("\n\nあなたは桃太郎です。鬼ヶ島にいる鬼は,じゃんけん
に自信を持っているそうです。鬼達は,じゃんけんに負けるとショック
死してしまうことが知られています。鬼の数は100匹です。何匹まで減
らせるか頑張ってください。\n\n");
0321320続きです
NGNGprintf("あなたの出す手を選んでください。:[グー:1][チョキ:2][パー:3]");
scanf("%d",&first);
if(first < 1 || 3 < first) /* これが終了条件 */
{printf("\n\n桃太郎は疲れたので帰ることにしました。
以下が今回の成績です。\n\n");
printf("あなたは%d回勝ちました。\n",kachi);
printf("残りの鬼は%d匹です。\n",oni);
printf("最多連続勝ち回数は%d回です。\n",max);
exit(0);
}
else
0322320続きです
NGNGif(first ==1 && cpu ==1)
printf("あいこ!鬼は驚いています。\n");
else if(first ==1 && cpu ==2)
{printf("勝ち!鬼は息耐えました。\n");
oni=oni-1; //鬼が一匹減る。
kachi=kachi+1; //勝ち回数+1
combo=combo+1; //連続勝ち回数+1
if(max < combo)max=combo; //最多勝ち回数の判定
}
else if(first ==1 && cpu ==3)
{printf("負け!鬼は喜んでいます。\n");
combo=0; //連続勝ち回数消去
}
else if(first ==2 && cpu ==1)
〜〜〜中略〜〜〜
}while(1);
exit(0);
}
0323デフォルトの名無しさん
NGNG0324_
NGNG0325デフォルトの名無しさん
NGNGcpu は 0, 1, 2
0326デフォルトの名無しさん
NGNGもしや、3×3=9個のif 〜 else if 〜 を並べているのか?
どうせどこかで combo = 0 を忘れているとか、
条件式が間違ってるとか、そういう事だろう。
つか、そういう汚い作りをするのが原因とも言える。
if (first == cpu) {
// あいこ
}
else if (first == cpu - 1 ||
first == 3 && cpu == 1) {
// 勝ち
}
else {
// 負け
}
0327デフォルトの名無しさん
NGNG0328デフォルトの名無しさん
NGNGテーブル作ってもいいかもね。
0329デフォルトの名無しさん
NGNG0330デフォルトの名無しさん
NGNGfor(;;)にすべき。
0331デフォルトの名無しさん
NGNGなぜ?
0332デフォルトの名無しさん
NGNGdo{}while(1);とwhile(1){}はどう違うの?
0333デフォルトの名無しさん
NGNGアホですか?
do{}while(1);doのスコープが絶対処理される。
while(1){}whileのスコープが絶対処理される。
while()は条件によっては処理されないことがあるが常に真なのでdo-whileと
おなじ・・・
0334デフォルトの名無しさん
NGNG一回は実行するという do-while の仕様により
一回は実行するというプログラムの性質を強調できる、と。
そういうコードでは拡張するうちに条件を加えたくなった場合にも
多分 while じゃなくて do-while にすることになると思う。
0335(´・ω・`)
NGNG3次元上の点でp1,p2,p3,p4があるとする。p1,p2は水平で、p3,p4も水平であり、
この2線は平行している。p1,p2を結んだ中点とp3,p4を結んだ中点を結んだものが
対称面となる。
このとき、この法線ベクトルを求めるプログラムを書きなさい。
お願いします〜(つД`)
0336_| ̄|○
NGNG_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
_| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○ _| ̄|○
0337デフォルトの名無しさん
NGNGだから、それは数学だって。
0338デフォルトの名無しさん
NGNGプログラミングの為の数学と算数
http://pc2.2ch.net/test/read.cgi/tech/997150743/l50
0339デフォルトの名無しさん
NGNGもしかして >>303 と同じ問題じゃない?
回答は >>317 にあるよ。
0340デフォルトの名無しさん
NGNGま、先にwhile(1)とか書いて「無限ループっすよ」と読む側に
注意を促しといてくれるほうが嬉しいな。do〜whileだと、
ループの終了条件ははるか下のほうにあるから面倒だな。
0341デフォルトの名無しさん
NGNG高速に打てるぞ
0342デフォルトの名無しさん
NGNGノーbraの方がカワイイじゃん
0343デフォルトの名無しさん
NGNG0344デフォルトの名無しさん
NGNGさて、訳の分からん連中が出てきたところで・・・
age
0345デフォルトの名無しさん
NGNG0346デフォルトの名無しさん
NGNGそれでもプログラマか。
0347デフォルトの名無しさん
NGNG0348デフォルトの名無しさん
NGNG0349デフォルトの名無しさん
NGNG0350デフォルトの名無しさん
NGNG0351デフォルトの名無しさん
NGNGwhile(1)では、評価式が常に真ですという警告を出すコンパイラがある
らしい。
0352デフォルトの名無しさん
NGNGSE=Sound Effect
ですが、何か?
0353320-322
NGNG>>325
ΣΣ(゚д゚lll)ズガーン!!最初は、自分の出す手を「0,1,2」にしたのですが、「0」だけ離れているので「1,2,3」に変えたんです。その時に、cpuの数も変えてしまったようです。おそらく、問題1はこれで解決されると思います。ありがとうございます。
>>326
学校でC言語を習い始めて2日なので、色々考えてこうなったのです。326さんのやり方のほうがスマートですね。もっともっと勉強したいとおもいます。
「combo=0」は、全ての負け条件の時にいれてあります。が、美しくないので、条件部分を書き直します。ありがとうございました。
0354デフォルトの名無しさん
NGNG#define IA 16807
#define IM 2147483647
#define AM 1/IM
#define IQ 127773
#define IR 2836
float rand(long *idum);
------rand.h---------
------rand.cpp-------
#include <rand.h>
float rand(long *idum){
long k;
float ans;
k=(*idum)/IQ;
idum=IA*(*idum-k*IQ)-IR*k;
if(*idum<0) *idum+=IM;
ans=AM*(*idum);
return ans;
}
------rand.cpp-------
borlandでrand.cppをコンパイルしたんですけど、どうもうまくいきません
'long'が'long *'にできないというエラーが出ます。
学校のUNIXではうまくいけるのに、理由がわかりません
0355デフォルトの名無しさん
NGNG0356デフォルトの名無しさん
NGNGこうじゃないの?
0357デフォルトの名無しさん
NGNGこれがまちがい。
学校のうにくすは、ポインタへ整数値を警告なしで
代入できるんだろう。
0358デフォルトの名無しさん
NGNG値渡しでいいじゃん。
0359デフォルトの名無しさん
NGNG0360デフォルトの名無しさん
NGNG0361358
NGNG0362デフォルトの名無しさん
NGNGハァ?
0363デフォルトの名無しさん
NGNG宿命の対決
0365358=361
NGNG変更後のポインタが指している値を次の乱数シードにす
るのかと思ったんだけど違ったみたいね・
0366デフォルトの名無しさん
NGNGそれをどうやったら>>361みたいな書き方が出来るんだ?
素直に間違ってましたって書けよ。
036735
NGNG0368デフォルトの名無しさん
NGNG先ずp1とp2を結ぶベクトルを求める。
次にp1とp3を結ぶベクトルを求める。
ココでp1p2//p3p4なので、p1p2ベクトルとp1p3ベクトルは同一平面上である。
よってp1p2ベクトルとp1p3ベクトルの外積を求めればよい。
normal.x = p1p2.y * p1p3.z - p1p2.z * p1p3.y;
normal.y = p1p2.z * p1p3.x - p1p2.x * p1p3.z;
normal.z = p1p2.x * p1p3.y - p1p2.y * p1p3.x;
この求まったベクトルを単位化すれば、法線となる。
ただし、この外積計算は左手系の場合。
何度も言わせないでね、数学をやるべき。
全然プログラム処理は大した事ない、数的理解のみでしょ。
0369デフォルトの名無しさん
NGNGそこまで言ったら理解して欲しいな。
シードを指すポインタを次々に変更して値をとるってのを、メモリ上を移動していくと表現したのだが。
0370デフォルトの名無しさん
NGNGなんで?(;_;)
0371デフォルトの名無しさん
NGNGハァ?
0372デフォルトの名無しさん
NGNGどこがおかしいのか指摘もできないんだね。
0373デフォルトの名無しさん
NGNGポインタは変更されてませんが、何か?
0374デフォルトの名無しさん
NGNGあなたの環境で、そのストリームを開けないから
0375デフォルトの名無しさん
NGNG多分君がrootぢゃないから。
CというよりUNIXの話だと思われ。
0376デフォルトの名無しさん
NGNGアラ本当だ。藁
0377デフォルトの名無しさん
NGNGそういうことですか(;_;)
いたづらできないようになっているんですね(;_;)
0378デフォルトの名無しさん
NGNGこれで満足?
0379デフォルトの名無しさん
NGNG最終的にはhoge[n][10]って感じの配列になるんですが、nの数がわからない。
配列に格納すべきデータが見付かるたびに、要素を追加していくって感じ
の処理なのですが。
0380デフォルトの名無しさん
NGNGmallocタン(^o^=)
0381デフォルトの名無しさん
NGNG0382380
NGNG0383デフォルトの名無しさん
NGNG今さら、そんなネタ出さなくても…
0384デフォルトの名無しさん
NGNG0385デフォルトの名無しさん
NGNGが正解
0386354
NGNG#include <stdio.h>
#include <rand.h>
#define seed 20030416
#define r 1000
int main(){
int i;
long s;
float x;
FILE *a;
a=fopen("pre0.txt","w");
s=seed;
for(i=0;i<r;i++){
x=ran0(&s);
fprintf(a,"%d, %f\n",i,x);
}
fclose(a);
}
--------random1.cpp--------
これと修正したrand.cppをそれぞれコンパイルしてリンク、実行したんですけど
実行結果で0から1までの乱数群が出て来ずに
... 1, 0.000000\n2, 0.000000\n .... \n 999 0.000000 ...(\nで改行)と出てきました
... 1, 0.254542\n2, 0.647889\n .... \n 999 0.913525 ...のように出てくるにはどうしたらいいでしょうか?
0387デフォルトの名無しさん
NGNG0388デフォルトの名無しさん
NGNG0389デフォルトの名無しさん
NGNG0390387
NGNGran0の戻り値を確認してみれば分かると思うよ。多分常に0.0が返ってくる思う。
ans=AM*(*idum);を展開してans=1/2147483647*(*idum);。1/21...は0だから*idumとかけても0。
それをansに入れて返すんだから常に0
#define AM 1/IMを#define AM 1.0F/IMにすれば解決するはず。他にも問題ありそうだけど。
0391デフォルトの名無しさん
NGNG0392デフォルトの名無しさん
NGNGFF8だろ?
0393デフォルトの名無しさん
NGNG最初と最後の『 ' 』も含めて'aaa'です
0394デフォルトの名無しさん
NGNGできん
0395デフォルトの名無しさん
NGNG0396デフォルトの名無しさん
NGNGunix系のコマンドラインが使えるなら、
sed/awkなどで書き換えてからコンパイルするようにmakefileを書けばできるけど。
で、なんでそんな意味不明なことしたいの?
0397デフォルトの名無しさん
NGNG口だけじゃなく、やって見せろ!!
0398デフォルトの名無しさん
NGNG{
int ret;
va_list args;
va_start(args, format);
ret = vprintf(format, args);
va_end(args);
return ret;
}
0399デフォルトの名無しさん
NGNGやると思った。
0400デフォルトの名無しさん
NGNG0401デフォルトの名無しさん
NGNG当然ながらまずい。
ついでにいうと、freeと違ってNULLを渡すのもまずい。
0402デフォルトの名無しさん
NGNG0403デフォルトの名無しさん
NGNGばーか
0404デフォルトの名無しさん
NGNG>ソース丸投げ、宿題、書籍 は専門の別スレがあるのでそこへさようなら。
0405デフォルトの名無しさん
NGNG0406400
NGNGFILE *p;
p = NULL;
if(p=NULL)fclose(p);
とかやっても大丈夫ですか?
0407デフォルトの名無しさん
NGNGそのコードならOK(ワラ
0408400
NGNGFILE *p;
p = NULL;
if(p != NULL)fclose(p);
でした
0409デフォルトの名無しさん
NGNGどこにあるの??
0410デフォルトの名無しさん
NGNG「p = NULL;」と「if(p != NULL)fclose(p);」の間に何もないのならOKだけど、
何かあるなら、そのなにかによってはまずい。
0411400
NGNGop = fopen(o_name,"w");
fgetcとか
fputcとか
opとipは別々のファイルポインタで、ファイルポインタに触れるのはこれくらいです
やっぱ、まずいですか?
0412デフォルトの名無しさん
NGNGfopenの戻り値ならOK
0413デフォルトの名無しさん
NGNGそんくらい自分で探せ。
0414デフォルトの名無しさん
NGNGないでしょ。
0415400
NGNG0416デフォルトの名無しさん
NGNG自分が無能で見つけられないものは無いってか?w
0417デフォルトの名無しさん
NGNGオススメの入門書ありますか?
0419デフォルトの名無しさん
NGNG参考図書スレへ Go!
0420デフォルトの名無しさん
NGNGunko[0] = 'a';
unko[1] = 'b';
unko[2] = 'c';
for(int i=0;i<10;i++){
unko[3]=i;←
}
みたいなことをやりたいんですけど
どうしたらいいかおわかりの方教えていただけないでしょうか
bcc使ってます
0421デフォルトの名無しさん
NGNG0422デフォルトの名無しさん
NGNGいまいちよくわからないんだけど。それでもコンパイルできるし(iの宣言場所がCとしてはまずいけど)動くし。
何をしたいの?
0424デフォルトの名無しさん
NGNG型が違うかなっと思ったんですけど
通るんですか?
0426デフォルトの名無しさん
NGNGcharもintも整数だから互換性があるよ。
ただしintの方が大きい場合(大抵は大きい)、データが失われる可能性があるけど。
0427デフォルトの名無しさん
NGNGコンパイル通るんですけど
なんか文字化けします
0428デフォルトの名無しさん
NGNG制御文字を表示したからでは。
0429デフォルトの名無しさん
NGNG何がしたいの?って聞かれてるのにちゃんと答えないからだよ
0430デフォルトの名無しさん
NGNGつまり、正常に動作しているわけだが。
0431デフォルトの名無しさん
NGNG最終的にunko[3]に入るのは9。ASCIIコードでHT。・・・・HTってなに?
0433デフォルトの名無しさん
NGNG0434デフォルトの名無しさん
NGNG\tかな?
0435デフォルトの名無しさん
NGNGそういうときはASCIIなら'0'と足す。i+'0';
確か数字が連続していない文字コードはなかったと思うから、他の環境でもOKだと思うけど。心配なら面倒だけどatoi
0436デフォルトの名無しさん
NGNG解決しました
ありがとうございます
0437デフォルトの名無しさん
NGNG0438デフォルトの名無しさん
NGNGああそうか。Horizon Tabか。サンクス。
0439デフォルトの名無しさん
NGNGどうすればいいですか?
0440デフォルトの名無しさん
NGNG0441デフォルトの名無しさん
NGNG0442デフォルトの名無しさん
NGNG○charを使うとすべてが
です・・・
コンパイラはVC6を使ってます
0443デフォルトの名無しさん
NGNG"0123456789"[kazu%10];
一桁ならこちらの方がコードに依存しない。
0444デフォルトの名無しさん
NGNG知るかボケ
0445エスパー候補
NGNGprintf("%c",c);
}
とか
0446デフォルトの名無しさん
NGNGchar* p ="表示";
char str[3];
strncpy(str,p,3);
printf("%s",str);
か?
0447デフォルトの名無しさん
NGNGなら、charを使うな
0448デフォルトの名無しさん
NGNG記述のしかたもお願します。
房質問すみません。
0449デフォルトの名無しさん
NGNG釣り?
0450デフォルトの名無しさん
NGNG正確な乱数の定義は?
0451デフォルトの名無しさん
NGNG0452デフォルトの名無しさん
NGNG正確な乱数(謎)とは言いがたいが
0453デフォルトの名無しさん
NGNGttp://www.geocities.co.jp/Milkyway-Sirius/1907/index.html
どうもありがとうございました
でもなんか見た目が悪くてなんか嫌です
0454デフォルトの名無しさん
NGNG0455デフォルトの名無しさん
NGNGttp://www.geocities.co.jp/Milkyway-Sirius/1907/unko.txt
0456デフォルトの名無しさん
NGNGunkoの末尾に'\0'がつかないままfputsしている気がする・・・
0457442
NGNGてめーらシカトしてんじゃねぇ!!!!!
Cなら俺に聞けって言うから
あんまりC自体には関係ないが・・・
聞いてんじゃねぇかヴぉけ!!
だから教えてください
0458デフォルトの名無しさん
NGNGよく分かんないですけど
メモリ確保したときのデフォルトって0じゃないんですか?
とりあえず動きました
それよりできれば綺麗な書き方を教えてほしいです
0459デフォルトの名無しさん
NGNG#include <stdio.h>
#include <ctype.h>
int main()
{
char c;
for(c=0;c<=127U;c++)
if(isprint(c))
printf("%c ",c);
else
printf("(^_^;) ");
putchar('\n');
return 0;
}
0460デフォルトの名無しさん
NGNG自動変数だと明示的に初期化しないと何が入るかわからない。
char unko[8]={0};とすれば全て0に初期化される。
0461デフォルトの名無しさん
NGNGstatic char unko[8];
にすればいいってことですか?
0462デフォルトの名無しさん
NGNGいつから、Cの仕様が、かわったんだ?
0463デフォルトの名無しさん
NGNG1999年
0464デフォルトの名無しさん
NGNGそうか、しらんかった。ありがとう
0465デフォルトの名無しさん
NGNGなぁ、何か間違ったこと言った?指摘してくれると嬉しいんだけど。
0467デフォルトの名無しさん
NGNG安心汁。合ってる。
配列の一部分を初期化した場合、
明示的に初期化しなかった部分は0で初期化される。
0468デフォルトの名無しさん
NGNG俺には一体どこでつまづいてんのかよー分からん。
もしかしてだけど、最初UNIX系で作ったプログラムじゃない?
0469デフォルトの名無しさん
NGNG>>466さんの言う通りにしてもらうと一番いいのだが、書いて表現するのが難しいというなら
せめてどういう入力をしてどういう出力がされたのか書いてくれ。
0470デフォルトの名無しさん
NGNGそうすると、コンパイラが「プロトタイプのない関数を使ってる」って
警告を出します。なぜなんでしょう。
0471デフォルトの名無しさん
NGNGプロトタイプのない関数を使っているから
0472デフォルトの名無しさん
NGNG0473デフォルトの名無しさん
NGNGおれは学生です。
0474デフォルトの名無しさん
NGNGhttp://www.cmagazine.jp/src/kinjite/c/oldstyle.html
結構つっこみどころのおおい記事ではあるが
0475デフォルトの名無しさん
NGNGチミの質問は
「どうして = じゃなくて == なんでしょうか」
と同じ類の質問だな。
仕様なんだからどうしてとか言われても答えようがないわな。
0476デフォルトの名無しさん
NGNG0477デフォルトの名無しさん
NGNG仕様上はプロトタイプは必要ないぞ。
あと、どうしてその仕様がその言語に追加されたのかを知っていると、
その仕様の活用の度合いが変わってくる。
なぜ、と問うことは決して無駄なことじゃない。
0478デフォルトの名無しさん
NGNGプロトタイプの存在はその例ほど単純なものじゃない。
・コンパイラは前方参照しない
・型宣言のない関数はintを返す
・関数に渡すパラメータは一定の法則で型変換される
といったもともとのCの仕様があって、型の不整合によるバグが相次ぎ、
しかもそれを検出する手段がほとんどなかった(lintなんてのはあった)。
その経験上の反省からC++にプロトタイプという関数の型を宣言する
機能が生まれ、それがCにも輸入されたという経緯がある。
プロトタイプの存在意義が初心者にわかりづらい側面があるのは
こういった複数の要因から成り立っているからだと思うな。
0479デフォルトの名無しさん
NGNG前方って先の方ってこと?
それとも以前の方のこと?
0480デフォルトの名無しさん
NGNGファイルの終端方向が前方。
0481デフォルトの名無しさん
NGNG了解。
ホンマ分かりにくい言葉だ。
というか、日本語が分かりにくいのか。
0482デフォルトの名無しさん
NGNGうん。わかりづらいんだよね。おれもはじめてみたときは面食らったもの。
一応テクニカルタームなのでそのまま使ったけど、ひどい訳語だと思う。
0483デフォルトの名無しさん
NGNGファイルを基準にするのと
ファイルポインタの進行方向を基準にするので
どっち方向も前にも後ろにもなりうるんだよね。
どっちかというとファイルを基準にしたほうが分かりやすいと思うんだけど、
一体誰がこんな訳語を考えたのか。
俺なら未来参照と訳すかなぁ...。
0484デフォルトの名無しさん
NGNG先(に)入れ(たものを)先(に)だし
と補完しないと意味不明になる
0485デフォルトの名無しさん
NGNG(値を格納している変数は変えずに)
本で調べてものってなかったです。くだらない質問ですが教えてください。
0486デフォルトの名無しさん
NGNG整数部がそれほど大きくなければ、(int)((d*10+5)/10) /* dはdouble型 */
0487486
NGNG0488486
NGNG・・・・。0.5を足せばいいんじゃないか・・・・なにやってんだろ俺。
0489デフォルトの名無しさん
NGNGbackward - 逆方向に向かう
日本語だと前は手前も先のほうにも解釈できてややこしいな
0490デフォルトの名無しさん
NGNGgoo辞書はこう訳しているみたいだ。前方よりはいいかも。
0491485
NGNG0493デフォルトの名無しさん
NGNG0494485
NGNGふう、できました。どうもです。
0495直リン
NGNG0496デフォルトの名無しさん
NGNGint i;;
char a;
}aho[100];
とかのすべてのiに0とかの初期値を入れたいのですがforとかで回して入れるしかないんでしょうか?
0497デフォルトの名無しさん
NGNG>>460>>467
0498デフォルトの名無しさん
NGNG0499デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/test/read.cgi/hp/1004494535/l50
0500デフォルトの名無しさん
NGNG手前参照
0501デフォルトの名無しさん
NGNG{
NODE *tempptr = *ptr , *newptr ;
if(tempptr == NULL) {
newptr = malloc(sizeof(struct node)) ;
newptr->leftptr = NULL ; newptr->rightptr = NULL ;
newptr->data = data ; *ptr = newptr ; return 1 ;
}
while(tempptr != NULL) {
if(tempptr->data == data)
return 0 ;
else {
if(tempptr->data > data)
tempptr = tempptr->leftptr ;
else
tempptr = tempptr->rightptr ;
}
}
newptr = malloc(sizeof(struct node)) ;
if(newptr == NULL) {
printf("\n out of memory \n") ;
exit(0) ;
}
else {
newptr->data = data ; newptr->leftptr = NULL ;
newptr->rightptr = NULL ; tempptr = newptr ; return 1 ;
}
}
これで挿入した二分探索木を走査すると論理エラーになりますんでよろ。
0502デフォルトの名無しさん
NGNG{
while(*ptr != NULL) {
if((*ptr)->data == data) return 0 ;
if((*ptr)->data > data)
ptr = &(*ptr)->leftptr ;
else
ptr = &(*ptr)->rightptr ;
}
*ptr = malloc(sizeof(NODE)) ;
if((*ptr) == NULL) {
printf("\n out of memory \n") ;
exit(0) ;
}
(*ptr)->leftptr = NULL ; (*ptr)->rightptr = NULL ;
(*ptr)->data = data ;
return 1 ;
}
0503デフォルトの名無しさん
NGNG質問なんですが
6行目や8行目の
ptr = &(*ptr)->leftptr ;
の部分を
*ptr = (*ptr)->leftptr ;
とコーディングしてもいいんでしょうか?
0504デフォルトの名無しさん
NGNGそのココロは…?
ptr=...
*ptr=...
が同じことをするようには見えないけど
0505デフォルトの名無しさん
NGNG自分には*ptr=... でも
同じようになぞってるように見えるんですが
0506デフォルトの名無しさん
NGNGじゃあ、それでOK
0507デフォルトの名無しさん
NGNGptr = ... → ptr の値を変更する
*ptr = ... → ptr の参照先の値を変更する
全然違う。
>>506
死
0508デフォルトの名無しさん
NGNGよく読め。
ptr = &(*ptr)->leftptr ;
の「ptr」はポインタのポインタだろうが
0509松井
NGNG0510デフォルトの名無しさん
NGNGだから?
0511デフォルトの名無しさん
NGNG0512デフォルトの名無しさん
NGNG#include<stdio.h>
#include<XeasyGraphic.h>
float bkack[] = {0.0};
float orange[] = {0.8, 0.8, 0.0};
float purple[] = {0.8, 0.0, 0.8};
main()
{
int x,y,r;
id w;
printf("中心のX座標を指定してください。 >");
scanf("%d",&x);
printf("中心のY座標を指定してください。 >");
scanf("%d",&y);
printf("円の半径を指定してください。>");
scanf("%d",&r);
w = GrWindow(100.0, 100.0, 500.0, 500.0);
GrCircle(w, %d, %d, %d, 1.0, Gr_RGB, black,x,y,r);
getchar();
exit(0);
}
このように書いて、コンパイルしようとしたのですが、
「c.21(GrCircleの行らへん):parse error before '%'」とエラーになってしまいます。
どこが間違っているのでしょうか?よろしくおながいします。
0513デフォルトの名無しさん
NGNGGrCircle(w, %d, %d, %d, 1.0, Gr_RGB, black,x,y,r);
ここの%d。
21行目だと教えてくれているじゃないか・・・・
0514デフォルトの名無しさん
NGNG0515デフォルトの名無しさん
NGNG0516512
NGNG>>514
指定した数をscanfで「%d」に代入されて、printfで表示させる方法と同じ方法で書いたものなので、なぜ間違っているのかがわからないのです。どう直せばよいのか、ご指導お願いします。
>>515
実は、京産からアクセスしていたりします。
0517デフォルトの名無しさん
NGNGscanf は、指定された変換フォーマット(ここでは %d )に従い入力を変換し、
対応するパラメタをポインタとして取り出してオブジェクトを格納するんだよ。
ようするに、値は x, y, zに入っているから、それを直接パラメタにしていいんだよ。
0518デフォルトの名無しさん
NGNG>指定した数をscanfで「%d」に代入されて、printfで表示させる方法と同じ方法で書いたものなので
printfで表示させる方法ってなんのことやらわからん。
GrCircle(w, %d, %d, %d, 1.0, Gr_RGB, black,x,y,r);
でprintfフォーマット文字列のようなものを使ってるけどそのことか?
文字列でさえないんだけどな。
0519デフォルトの名無しさん
NGNGscanfの"%d"はあくまでも文字列。
%dと裸のまま書いたらエラー。%は割ったあまりを求めるもので、項が二つ必要だからね。(あとdが未定義だし)
0520519
NGNG0521520
NGNG見間違えた
0522512
NGNGありがとうございました。無事、コンパイル、実行することができました。
が、値を入力して、画像が表示された直後に画像が消えてしまいました。
ためしに、「getchar();」を2つにしてみたところ、任意のキーを押すまで画像が消えなくなりました。
これはなぜなのでしょうか?
重ね重ねすいません。おながいします。
0523デフォルトの名無しさん
NGNG0524522
NGNGでは、どうすればよいのでしょうか?
本当に初心者なものでして、よくわかりません(泣。
ここに来たのも、色々調べてのことなのです。よろしくおながいします。
0525デフォルトの名無しさん
NGNG画像がすぐに消えるのも嫌。任意のキーを押すまで消えなくなるのも嫌。
じゃあどうしたいの?一定時間表示させたいとか?
0526522
NGNGあ、いえ、任意のキーを押すまで消えなくさせたいのですが、大学の抗議では、
「getchar();は、任意のキーを押すまで表示させておく命令です」と教わっているので、
getchar();を2つ入力することに抵抗があるのです。
getchar();を2つ入力するままでよろしいのでしょうか?
0527デフォルトの名無しさん
NGNGその教授を窓から投げ捨てよう。
0528526
NGNG何となくわかりました<w
ありがとうございました。
0529デフォルトの名無しさん
NGNG犯行予告?
0530デフォルトの名無しさん
NGNG0531デフォルトの名無しさん
NGNG0532デフォルトの名無しさん
NGNG0533デフォルトの名無しさん
NGNGint x[3], i;
for(i=0; i<3; i++)
scanf("%d", x+i);
解答では x+i じゃなくて &x[i] になってたんですけど、
x+i でも普通に実行できると教授に抗議したら嫌そうな顔で○にしてくれました。
x+i だと何かいけないんでしょうか?
0534デフォルトの名無しさん
NGNGその教授を窓から投げ捨てよう。
0535デフォルトの名無しさん
NGNG日本の大学授業ってレベル低いのな・・・
0536533
NGNG´Д`)マジっスカ
「ホントに実行できたんか?」と念押しされたんで、
処理系に依存しているとかの問題があるのかと思ったのに。
今見たらK&Rでも使われてるし……。
0537デフォルトの名無しさん
NGNGメモリーの容量で表示を変えたり
HDDの容量で表示変えたり
OSによって表示変えたり実行できるOS制限したり
できませんか?
0538デフォルトの名無しさん
NGNG>>1
> GUIなどの標準Cではできない事の質問は使用している開発環境のスレへGo!
0539デフォルトの名無しさん
NGNGなんら問題はない。
むしろ、その方がスマートかと。
ちなみに、その場合の「x+i」は
配列 x の先頭アドレスから i 個目の要素を指す。
0540デフォルトの名無しさん
NGNG&x[0]を知らない博士サマが
真面目な反論にろくに検証もせずに嫌な顔って?
fjにもいたけどよ、意見合わないとすぐバカとか猿とか言い出す助教授サマ
まさにこの親にしてこの子ありだよな
嘆かわしい限りだ
0541デフォルトの名無しさん
NGNG猫でも分かるプログラミングの
ISBNを作ろうでつまずいてるんですけど
やばいっすか?
0542デフォルトの名無しさん
NGNG俺はa+iを使うけど。
0543デフォルトの名無しさん
NGNG0544デフォルトの名無しさん
NGNGx+i で貰えない様だから無理じゃないの?
合ってるけどな(w
0545デフォルトの名無しさん
NGNG通常は入力関数に何を使うんですか?
0546デフォルトの名無しさん
NGNG弱虫はfgets
漢はgets
そのあとsscanfなどを使って処理する。
0547デフォルトの名無しさん
NGNG状況による
0548デフォルトの名無しさん
NGNG0549デフォルトの名無しさん
NGNG0550546
NGNG一定バイトごととかならfread
0551デフォルトの名無しさん
NGNGこのテトリスってどうやって作ってるんですか?
API使ってるの?
標準C?
0552デフォルトの名無しさん
NGNGしらねーよ。
実行ファイルだけじゃCと関係ないし。
0553デフォルトの名無しさん
NGNGしらねーよ。
実行ファイルだけじゃCと関係ないし。
0554デフォルトの名無しさん
NGNGスレ違い
0555デフォルトの名無しさん
NGNG分かりました。
sscanfは初耳なんでちょっと調べてみまつ。
0556デフォルトの名無しさん
NGNGデータをこぼす点でgetsと同類
0557デフォルトの名無しさん
NGNG怖いから実行しないで想像で答えるけど、グラフィック使ってるなら、API使ってる。
(もしくは標準以外のライブラリか)
0558デフォルトの名無しさん
NGNGはぁ?
0559p
NGNGGNU MPライブラリを用いて二項係数 nCkを求める関数
void my_mpz_binom(mpz_t rop, int n, int k) を作成し、
70 C 13 を求めよ。
0560デフォルトの名無しさん
NGNGコドモは寝る時間だ
高尚なギャグを邪魔するな
0561デフォルトの名無しさん
NGNG宿題は自分でやるものだ。
0562デフォルトの名無しさん
NGNGC/C++の宿題・・・のほうに解を書いときました。
当方 GNU MPライブラリは初めてなので間違ってるかも。
でも大体あってると思います。
マニュアル↓
http://mirrors.theonlinerecordstore.com/gnu/Manuals/gmp/html_mono/gmp.html#Function%20Classes
0563デフォルトの名無しさん
NGNG宿題は写すものだ
0565デフォルトの名無しさん
NGNG0566デフォルトの名無しさん
NGNG0567デフォルトの名無しさん
NGNG具体的には n=5 のとき 自然数の組み合わせは
5, 41, 32, 311, 221, 2111, 11111 です。
つまり、自然数の組み合わせの中に 1 がk_1個、 2 がk_2個、…、 n がk_n個あるとすると
k_1,k_2,…,k_n が
k_1 + 2 * k_2 + … + n * k_n = n
という方程式を満たす0以上の整数解を持てばいいのですが、どういうアルゴリズムで
k_1,k_2,…,k_n を求めるかわかりません。お願いします。
0568デフォルトの名無しさん
NGNG0569デフォルトの名無しさん
NGNG再帰だとちょっと n が大きいと止まっちゃうんじゃない?
0570デフォルトの名無しさん
NGNGワラタ
0571デフォルトの名無しさん
NGNGC/C++の宿題スレの過去ログを見ろ。
0572デフォルトの名無しさん
NGNG┃ここまで理解した .┃
┃┌─────┐ LV 10 ┃
┃│ ∧ ∧. ..│ HP 100/150 ┃
┃│ ( ´∀`) ..│ MP 25/50 ┌────┐ ┃
┃└─────┘ .│SAVE← .│ ┃
┗━━━━━━━━━━━━━━━━━━ │LOAD │━┛
.. └────┘
0573デフォルトの名無しさん
NGNG0574デフォルトの名無しさん
NGNGchar dmy[2];
dmy[1]='\0';
int ret=0;
int data_length=strlen(data);
int i;
for(i=0;i<data_length;i++){
dmy[0]=data[i];
ret+=atoi(dmy);
}
return ret;
}
int main(){
char data[1000];
scanf("%s",data);
printf("%s is %d",data,arege(data));
}
0575デフォルトの名無しさん
NGNG0576デフォルトの名無しさん
NGNG最初に、1を全部並べる。11111
data[0]とdata[1]を合計して、11111から、2111 → 311 → 41 → 5
次に、data[1]とdata[2]を合計して、2111から221→ 23, 311から32
ここで、data[n-1]>=data[n]という条件があるならば23は消せる。
結局これで得られるのは、
11111,2111,311,41,5,221,32
あとは、strlenでソートかければよろしい。
0578デフォルトの名無しさん
NGNG問題で与えられたnと混乱する。
0579デフォルトの名無しさん
NGNGのあいうえおは、いったん確保されますよね?
関数終了と同時に領域確保されるんですか?
0580デフォルトの名無しさん
NGNGプログラムが動いている間確保されているハズだが
0581デフォルトの名無しさん
NGNG終了と同時に確保してどうする
0582デフォルトの名無しさん
NGNG間違えましたw
関数抜けたと同時になくならず、プログラム終了と同時になくなるのですか?
0583デフォルトの名無しさん
NGNG状況による。
ROM とかに確保する場合もあるんだから、電源切っててもなくならなかったりする。
0584デフォルトの名無しさん
NGNG0585デフォルトの名無しさん
NGNGどういったことに使えるんですか?
実用的な例をお願いします。
簡単なコードもお願いします
0586デフォルトの名無しさん
NGNG0587デフォルトの名無しさん
NGNG0588デフォルトの名無しさん
NGNGCLOCKS_PER_SECが使えるようになる
0589デフォルトの名無しさん
NGNG0590デフォルトの名無しさん
NGNG計算結果は戻り値で返しますか?引数で返しますか?
これは状況によるのか個々の考えか、どっちでしょう?
0591デフォルトの名無しさん
NGNG、
0593デフォルトの名無しさん
NGNGというのは既に出てたか。
0594デフォルトの名無しさん
NGNGchar szStr1[] = "0123";
char* szStr2 = "0123";
szStr1[0] = szStr1[1]; // OK
szStr2[0] = szStr2[1]; // NG -> アクセス違反
となってしまうのが、いまいち理解できないのです…
どうしてでしょうか…?
なお、VC6 / Win2kSP3 環境下で発生しました。
0595デフォルトの名無しさん
NGNGいままで何度も繰り返された話題だからログ読みなされ
0596デフォルトの名無しさん
NGNG0597594
NGNG前スレにすら、似たような質問がありましたね…
失礼しました…
とりあえず、回答(だと思う)のある過去ログへのURLでも張っておきます。
- C言語なら、ぬるぽに聞け! Part 〈53〉
http://pc2.2ch.net/test/read.cgi/tech/1048995232/275-
0598デフォルトの名無しさん
NGNGガッ!
0599デフォルトの名無しさん
NGNGlong int y; /* 乱数の種 */
#define a 1234
#define b 4567
#define m 16383
main(){
double n;
y=8901;
y=(a*y+b)%m;
n=(double)y/(double)m;
printf("n=%lf\n",n);
exit( 0 );
}
上記のプログラムはコンパイル時、'exit'がおかしいと出ます
なんでですか?
0600デフォルトの名無しさん
NGNGまあ、mainの最後にexitがあるのもおかしいわけだが。
0601デフォルトの名無しさん
NGNG#include <stdlib.h> が無いからでないの?
0602デフォルトの名無しさん
NGNG0603デフォルトの名無しさん
NGNGmain関数の終了はexit関数を呼び出した時と同じ動作をする。
0604599
NGNGそのプログラムでmain(){とdouble n;の間にint z;
y=(a*y+b)%m;とn=(double)y/(double)m;の間に
z=(n*9%9)+1;を入れて再コンパイルしたら(9は適当な数です。10とかでも同じ結果でした)
浮動小数点を不正な使ってるというエラーが出ましたが、
まったくこの意味が分かりません。
0605デフォルトの名無しさん
NGNGなんでわざわざ関数を呼ぶのか分からん。
0606デフォルトの名無しさん
NGNGあと、%lf → %f ナ。
0607デフォルトの名無しさん
NGNG変数は初期化してから使用汁
0608デフォルトの名無しさん
NGNGこの場合は特に初期化する必要もないと思うが。
ポインタを一応 NULL で初期化しておくことはよくするけど、
これは正しく参照できないことが保証されてるからであって、
普通の数では何で初期化すればいいのやら分からんぜよ。
0609デフォルトの名無しさん
NGNGdouble n;
y=8901;
y=(a*y+b)%m;
z=(n*9%9)+1; /* nは初期化すべき */
n=(double)y/(double)m;
0610609
NGNG0611デフォルトの名無しさん
NGNG>y=(a*y+b)%m;とn=(double)y/(double)m;の間に
確かにそうやわ。
0612デフォルトの名無しさん
NGNG0613デフォルトの名無しさん
NGNG0614_
NGNG0615デフォルトの名無しさん
NGNG最近のオプティマイズでは無意味な初期化は無視されるので
初期化しておくのがいいよ、ぐらいの意では
0616デフォルトの名無しさん
NGNG無意味に初期化してしまうと
>>609 のような状態で警告してくれなくなっちゃうでしょ?
0617デフォルトの名無しさん
NGNGint型は32ビット
この場合、jは初期化すべきなのか、しないべきなのか…
unsinged int decode( unsigned char *p )
{
unsigned int i,j;
for(i=4;i--;j=(j<<8)+p[i]);
return j;
}
0618デフォルトの名無しさん
NGNG0619デフォルトの名無しさん
NGNGjの中身は未定でも問題ありません(警告は出るけど)
0620デフォルトの名無しさん
NGNGそんな細かいこと気にすんなよ。
>>619
「未定義」なんだから、abort() するコード吐かれても文句は言えないよ。
0621デフォルトの名無しさん
NGNG余りを求めるんですよね?
%を使ったほうがいいと思うんですが
0622デフォルトの名無しさん
NGNG0623デフォルトの名無しさん
NGNGint func(){
return;
}
とすると思うけど、
func(){
return;
}
こんな関数って、返り血はint型になるのですか?
0624デフォルトの名無しさん
NGNG0625デフォルトの名無しさん
NGNG0626デフォルトの名無しさん
NGNG0627デフォルトの名無しさん
NGNGなにが訊きたいかわからん。
とりあえず、return;だけじゃ何も返らん。
関数の返り値の型を書かないとintが仮定される。
0628デフォルトの名無しさん
NGNGint なら、省略可能
0629デフォルトの名無しさん
NGNG仮定されるんですか、なるほど。
今まで、int func()としないと値は返ってこないものと
思いこんでいて、本を眺めてたら、いきなり返値の指定のない
func()で書かれていたので。。
ちなみに、func(){}
として、連続してprintfで呼び出すと
1
2
2
2
て感じになったんですが、どういうことでしょう?
BCBのコンパイラです。
0630デフォルトの名無しさん
NGNGをちゃんと書けと言ってるだろうが
0631デフォルトの名無しさん
NGNG関数の呼び出し側に制御が戻った時に
あるレジスタに入っている値を戻りの値とみなしてるだけだったような。
0633デフォルトの名無しさん
NGNG誰がコンパイル出来ないと言っている?
0634デフォルトの名無しさん
NGNGgccだったら-Sつけて.s吐かせて関数呼び出し側のコードを見てみれ。
0635デフォルトの名無しさん
NGNG0636デフォルトの名無しさん
NGNG0637デフォルトの名無しさん
NGNG0638デフォルトの名無しさん
NGNG0639デフォルトの名無しさん
NGNG何回実行し直しても同じ値?>>632
0640デフォルトの名無しさん
NGNGVC++はスタックを0xccで初期化するからね。
>>632
Debug版じゃなく、Release版で試してみな、値が変わると思うよ。
0641デフォルトの名無しさん
NGNG戻り値なし return を使うこともある。
0642デフォルトの名無しさん
NGNG0643デフォルトの名無しさん
NGNG┃ここまで理解した .┃
┃┌─────┐ LV 10 ┃
┃│ ∧ ∧. ..│ HP 100/150 ┃
┃│ ( ´∀`) ..│ MP 25/50 ┌────┐ ┃
┃└─────┘ .│SAVE← .│ ┃
┗━━━━━━━━━━━━━━━━━━ │LOAD │━┛
.. └────┘
0644デフォルトの名無しさん
NGNG__declspec(naked)のときくらいだな、そんなことするのは。
もっとも、そんときゃreturnなんて使わん。
0645デフォルトの名無しさん
NGNGMP(マジックポイントかな?)ってどういうとき減るのかな?
0646デフォルトの名無しさん
NGNG0647デフォルトの名無しさん
NGNG0648デフォルトの名無しさん
NGNGdownload のreleaseクリックしてもそこからどうやるかわからん!
知ってる人教えてください
【コンパイラ】
gcc
http://gcc.gnu.org/
0649デフォルトの名無しさん
NGNGどうせダウンロードもできない奴には、使えないからあきらめろ。
それ以前にスレ違いだし。
0650デフォルトの名無しさん
NGNG0651デフォルトの名無しさん
NGNG好きなの落とせ
ftp://ftp.kddlabs.co.jp:0/pub/gnu/gcc/
0652デフォルトの名無しさん
NGNG不可能
配列をメンバーにもつ構造体を返すことはできるけど。
0653デフォルトの名無しさん
NGNG配列そのものは渡すことも返すこともできない。
配列へのポインタ、または配列の先頭要素へのポインタなら
渡すことも返すこともできる。
0654653
NGNGhoge (*f())[SIZE]; /* 配列へのポインタを返す関数 */
hoge *f(); /* 配列の先頭要素へのポインタを返す関数 */
0655653
NGNGhogeを返すこととhogeへのポインタを返すことを
混同しているようではC使いにはなれない。
0656デフォルトの名無しさん
NGNGつながらないよ。
本当にポート番号は0なの?
0657デフォルトの名無しさん
NGNGむづむづむづ…
修行してきます
0659652
NGNG0661650
NGNG構造体なら名前空間とかは関係ないですねぇ
いままで構造体がある言語を使ったことがなかったんで
こいつはたまげた!
0662俺的補足
NGNG大抵は、呼び出し側で予め用意した配列のアドレスを引数として渡してやると思うんだが・・・
このやり方分かってて聞いているんならいいけどさ。
0663デフォルトの名無しさん
NGNGstruct abc func();
って気持ち悪いんだけど、どう?
0664デフォルトの名無しさん
NGNG0665デフォルトの名無しさん
NGNGそう。
0666デフォルトの名無しさん
NGNG0667デフォルトの名無しさん
NGNG0668デフォルトの名無しさん
NGNG0669デフォルトの名無しさん
NGNGDIVはFORTRANの除算と同じ結果が得られるように作られた。
/%演算子とは結果が異なる場合がある。
簡単に言うと、/の商の丸め方と%の結果の符号は処理系依存だが、div()では規格で規定されている。
それに、大抵のCPUでは1命令で商と余りが同時に得られているので、
商も余りも必要な処理では実行速度の点で有利。
divはかなり遅い命令なのです。
0670デフォルトの名無しさん
NGNG0671デフォルトの名無しさん
NGNGありますか?
0672デフォルトの名無しさん
NGNGint main(){
char a='〇',b='●';
int c,n;
for(c=1;c<=91;c++){
if(c%2==1){
printf("%s",a);
}
else if(c%2==0){
printf("%s",b);
}
for(n=1;n<=9;n++){
if(c==9*n){
printf("\n");
}
}
}
}
0673デフォルトの名無しさん
NGNG9 の倍数 → 9 で割ったあまりが 0 と考える。
>>671
この板は、ソフトを作る人のための板で、作られたソフトを探す人のための板ではない。
0674デフォルトの名無しさん
NGNG0675デフォルトの名無しさん
NGNG0676デフォルトの名無しさん
NGNG『板』を色んな言葉に置き換えて言ってやりたいドアフォが大杉!!
・・・愚痴聞きアリガトウ >>ALL
0677Nanashi_et_al.
NGNG宣言で func1(…, double (*func2)(…), …) とサンプルでしているのですが,
別のところで func2 を宣言してるし,使えるのに
func1 の宣言を上のようにするのはナゼですか?
0678デフォルトの名無しさん
NGNGその場合のfunc2は関数ポインタ。
・・・・しっかし同じ名前を付けるのはどういうことか・・
0679Nanashi_et_al.
NGNGfunc1から呼び出せる関数がfunc2だけでなくfunc3とかにすることができて,
使いまわしができるから,ということで納得しました。。。
0680デフォルトの名無しさん
NGNGフリーズしてしまいました。
一瞬、ウイルスかと思いますた。(ぇ
0681デフォルトの名無しさん
NGNG0682680
NGNGどうか、教えて下さい。
なぜフリーズなのか。コンパイルエラーなら分かるけど
0683デフォルトの名無しさん
NGNG↑
0684デフォルトの名無しさん
NGNG0685デフォルトの名無しさん
NGNGコンパイルされるんですが、家でやると出来ないんですけどな
んででしょうか。。。
0686デフォルトの名無しさん
NGNG0687デフォルトの名無しさん
NGNG0688デフォルトの名無しさん
NGNG0689デフォルトの名無しさん
NGNG0690デフォルトの名無しさん
NGNG0691デフォルトの名無しさん
NGNG0692デフォルトの名無しさん
NGNG0693デフォルトの名無しさん
NGNG0694デフォルトの名無しさん
NGNG0695デフォルトの名無しさん
NGNGC言語っぽい娘だな
[下川みくに ]
■80.3.19生
■北海道 静内郡 静内町
■血液型B型
■星座・魚座
■身長 155cm
■下川みくにとは・・・
・ウソは苦手
・感極まるとすぐ泣く
・二つのことは同時に出来ない
・けっこうタフ
・自分は自分、人は人
・左手も器用
・口説くならストレートにね
・焼肉はハラミ、ビールはスーパードライ
・やっぱり夏が好き!!
・打倒ミシェルブランチ
・淋しい時は私の歌声で癒されてね
0696デフォルトの名無しさん
NGNG0697デフォルトの名無しさん
NGNG今入れてみたんですが、ここにXPが書いてなくて分からないんですが・・・
http://www.borland.co.jp/cppbuilder/freecompiler/faq/bccfaq4.html
どうすれば良いのでしょう?
0698デフォルトの名無しさん
NGNG0699デフォルトの名無しさん
NGNGタダで使えるBorland C++ Part3
http://pc2.2ch.net/test/read.cgi/tech/1054390397/
0700697
NGNGb&cが分かりません。。。
ドコにどうやって作成するんですか?T_T
a. 既存のパスに "c:\Borland\Bcc55\bin" を追加します。
b. bcc32.cfg ファイルを作成します。このファイルは,Include
および Lib パスのコンパイラオプション(コンパイラの -I
および -L スイッチ)を設定するものです。ファイルには次の
行を含めてください。
-I"c:\Borland\Bcc55\include"
-L"c:\Borland\Bcc55\lib"
c. ilink32.cfg ファイルを作成します。このファイルは,Lib
パスのリンカオプションを設定するものです。ファイルには
次の行を含めてください。
-L"c:\Borland\Bcc55\lib"
0701デフォルトの名無しさん
NGNGん、行動派だな。bin ディレクトリ上に(かな?)
bcc32.cfg ってファイルを作れ。
ilink32.cfg ってファイルを作れ。
内容は書いてあるとおりだ。
0702デフォルトの名無しさん
NGNG0703デフォルトの名無しさん
NGNG0704デフォルトの名無しさん
NGNG0705デフォルトの名無しさん
NGNG0706デフォルトの名無しさん
NGNG「とびっきりSUNDAY,・・・fall in love ♥」
0707680
NGNGCでは〇●は出力できないんですかね。変わりにa,bを置いてみました。
コードにはif((c%9)==0とあるので、9個表示したら改行するのかなぁ、と
思ったら4個で改行してるじゃないですか。>>672のマジックでつか?
それとも俺がバカなだけ?
#include <stdio.h>
int main(){
char a='a',b='b';
int c;
for(c=1;c<=91;c++){
if((c%2)==1){
printf("%c",a);
if((c%9)==0){
printf("\n");
}
}
else if((c%2)==0){
printf("%c",b);
if((c%9)==0){
printf("\n");
}
}
}
}
0708デフォルトの名無しさん
NGNG「メール欄にageと入れている時点で」に直せ。
0709697
NGNGんと、、、binファイル内(bcc32.exeがあるとこ)にbを作ってcも作りました。
いったん、txtで保存してそれのファイル名を変えるって方法をとってみました。
しかし、コンパイルはされませんT_T
再起動は必要なのでしょうか??
他になにか問題はありますか???T_T
0711デフォルトの名無しさん
NGNG0712680
NGNGでも、よく分からないうちにできてた。
もっと楽に設定できるフリーソフトがあったからそれ使ってみたら?
0713680
NGNG俺もそれは最初にすごく悩んだ。
でも、よく分からないうちにできてた。
もっと楽に設定できるフリーソフトがあったからそれ使ってみたら?
0714デフォルトの名無しさん
NGNG作業ディレクトリを移動したか?
メール欄を空にすればいいだろ。ここはID出ないし。
0715680
NGNGゴメソ
0717デフォルトの名無しさん
NGNG実行してどうなったか書け。
0718デフォルトの名無しさん
NGNGZeroMemoryのほうは、VC++にしか用意されていないんでしたっけ?
0719680
NGNGまず、cd \c で移動。
bcc32 *.cでOK!
0720デフォルトの名無しさん
NGNGUNIXのbzeroもそうだが、移植性を高めるならmemsetを使うべき。標準関数だからね。
0722デフォルトの名無しさん
NGNGyes
普通は
VCでコンパイルする前提ならZeroMemory、
他環境でもコンパイルする可能性があるならmemset。
それか、それらの関数のラッパーを作るか。
0723デフォルトの名無しさん
NGNGメッセージをコピペせー。
DOSプロンプトとかだったらマウスで選択して、
Enterでコピーできる。それを晒せ。
0724デフォルトの名無しさん
NGNG0725デフォルトの名無しさん
NGNGaができてねぇっぇえええっぇぇぇぇ
0726デフォルトの名無しさん
NGNG0727デフォルトの名無しさん
NGNGsizeof演算子か・・・
どういう仕様なんでしょうか?
例:int getchar(void);
0728デフォルトの名無しさん
NGNGオペランドの大きさをバイト単位で返す演算子
0729デフォルトの名無しさん
NGNG型やオブジェクトのバイト数をsize_t型として返す。
0730デフォルトの名無しさん
NGNGZeroMemoryはWin32API
0731デフォルトの名無しさん
NGNG0733デフォルトの名無しさん
NGNGchar配列ならな
0734デフォルトの名無しさん
NGNGうそつくんじゃねえw
int a[32];
のとき
sizeof(a)
は32を返すのか?
0735デフォルトの名無しさん
NGNG0736デフォルトの名無しさん
NGNG☆見て見て!!
http://endou.kir.jp/betu/linkvp2/linkvp.html
0737デフォルトの名無しさん
NGNG☆見て見て!!
http://pc2.2ch.net/test/read.cgi/tech/1056806789/
0738デフォルトの名無しさん
NGNGAPIじゃなくってmemesetのマクロじゃねー?
0739デフォルトの名無しさん
NGNG0740デフォルトの名無しさん
NGNGnaked 使わない場合はスタックフレームに関する処理が暗黙に入るので、
直接 ret を使わずに return を使うのじゃ。
0741デフォルトの名無しさん
NGNGsizeof aな
下手にカッコ書くから関数と勘違いさせちまうreturn(0)とかな
>>731
sizeof 配列名
コンパイル通らないことだってあるよな
もちろん知ってるよな?
0742デフォルトの名無しさん
NGNG>コンパイル通らないことだってあるよな
それはコンパイラが悪いだろ
0743デフォルトの名無しさん
NGNGWin32環境で用意されるという意味だ。
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/memory/base/zeromemory.asp
0744デフォルトの名無しさん
NGNGふーん
じゃgcc3.2もbcc5.51もcl13.00.9466も悪いのか
0745デフォルトの名無しさん
NGNGaでのbinとBinは一緒?
0746デフォルトの名無しさん
NGNG大文字/小文字の区別はないハズだよ
0747デフォルトの名無しさん
NGNGgcc3.2もbcc5.5.1も通るけど何やったら通らないの?
0748デフォルトの名無しさん
NGNG外部変数
0749デフォルトの名無しさん
NGNGextern汁
0750デフォルトの名無しさん
NGNGextern int a[]; で通らんのは当たり前やないか。
0751デフォルトの名無しさん
NGNGバカ丸出しだな
0752デフォルトの名無しさん
NGNGpath c:\Borland\Bcc55\bin
ってかくんですか?メンドイ
0753デフォルトの名無しさん
NGNG答え聞くまでぐうの音も出んかったくせに
0754デフォルトの名無しさん
NGNGパスの設定は bcc パス 設定
で検索汁
windowsのバージョン別で違うから
0755デフォルトの名無しさん
NGNG環境変数設定にいれとけ
0756デフォルトの名無しさん
NGNGとかやってて
sizeof str
が駄目だから配列は駄目だと思ってたに1ポイント
0757デフォルトの名無しさん
NGNG0758デフォルトの名無しさん
NGNG何でココで聞くのかな…
0759デフォルトの名無しさん
NGNGワラタ
0760デフォルトの名無しさん
NGNGhttp://alink3.uic.to/user/angeler.html
0761デフォルトの名無しさん
NGNGエラー:ファイルtest.cが見つからない
何故?
0762デフォルトの名無しさん
NGNGtest.cが見つからないから
0763デフォルトの名無しさん
NGNGパスとは何かを理解すれ
そして>>1-2をみれ
0764デフォルトの名無しさん
NGNG確かに存在すんだけどなぁ
0765デフォルトの名無しさん
NGNGpath設定もたぶんできてるんだけど
0767デフォルトの名無しさん
NGNGタダで使えるBorland C++ Part3
http://pc2.2ch.net/test/read.cgi/tech/1054390397/
0768デフォルトの名無しさん
NGNG>>719のようにしても駄目でした(悲
0769デフォルトの名無しさん
NGNG0770デフォルトの名無しさん
NGNGだから、スレが違うんだって
ココはC言語に関する質問スレで
チミの問題はBCCの使い方で、ココとは関係ない
0771デフォルトの名無しさん
NGNG・mycomputer を右クリックして以下のようにする
プロパティ > 詳細設定 > 環境変数 > path(編集)
・;c:\Borland\Bcc55\bin を加える
0772デフォルトの名無しさん
NGNGただカレントディレクトリが test.c のある所じゃないんじゃないの、
bcc32 "test.cのフルパス"
でやってみれ。
0773デフォルトの名無しさん
NGNG0774デフォルトの名無しさん
NGNG0775デフォルトの名無しさん
NGNGスマソ ;´Д`
他スレ(板)と比べてここの人親切だからついつい調子に乗りすぎてしまいました
0776デフォルトの名無しさん
NGNG多分、次はコンパイル出来たけど、
コンパイル後のファイルが無いって言い出すよ
0777デフォルトの名無しさん
NGNGよめ
他にも検索すりゃたくさん見つかる
0778デフォルトの名無しさん
NGNGコンパイルkita━━━(゚∀゚)━━━!!
あとはexeっしょ!?
親切に答えてくれた人も色々忠告してくれた人もマリガトー,,´∀`
0779デフォルトの名無しさん
NGNGなぁ〜んだ、つまんねぇ
mkdir test.c
とか禿藁があるんだろうと
楽しみに待ってたのに...
0780デフォルトの名無しさん
NGNGこれでも一応情報工学科なんで・・・オハズカシィ
0781デフォルトの名無しさん
NGNG0782デフォルトの名無しさん
NGNG0783デフォルトの名無しさん
NGNG#ifdef _UNICODE
typedef wchar_t TCHAR;
#else
typedef char TCHAR;
#endif
#define FAR
typedef const TCHAR FAR* LPCTSTR;
0784デフォルトの名無しさん
NGNGOKってことですか
0785デフォルトの名無しさん
NGNG{
textprint("うまくいきました");
}
のような場合、if関数に入らない限りうまくいきましたの文字列は、確保されないのでしょうか?
0786デフォルトの名無しさん
NGNG_UNICODE が定義されてなければ OK だけど。
NT 系でプロジェクト作ると
デフォルトで _UNICODE が定義されるようになってたと思う。
98 系でプロジェクト作ったならデフォルトで定義されない。
もし面倒ならプロジェクトの設定いじって _UNICODE を切るのも手だけど。
0787デフォルトの名無しさん
NGNG文字列リテラル(" " で囲まれた奴)は
プログラムの開始から終了の間ずっと確保される。
if(0) { textprint("..."); } のように条件が常に偽なってる場合に
確保するかはコンパイラ依存。
gcc で前確認した時には確保されてたっぽい。
0788デフォルトの名無しさん
NGNG"うまくゆきました";
#endif
これなら確保されないな。コンパイル前に消えるんだから当たり前だけど。
0789デフォルトの名無しさん
NGNGもちっとコンピュータの扱い方から教えんとダメポ、残念だけど。
これからプログラム書かなきゃならんやつがコマンドプロンプトも知らんし。
教えてもその本質を知ろうとしない。ブラックボックスのままで良しとする。
見てて効率悪すぎだし。あ〜ぁ、スレ違い。
0790デフォルトの名無しさん
NGNGオヤジっぽいな
0791デフォルトの名無しさん
NGNG同感。でも、使い方から教えてたら一年間くらい費やしそう
0792デフォルトの名無しさん
NGNGエラーのガ起こった時に、
if(エラー起こったか?)
errmessage("○○関数の値が不正値");
としているのですが、調べる箇所が増えると文字列も増えるのでちょっと鬱
まーでもよくよく考えると、初期化とかの部分ぐらいしかエラーメッセージ出さないんだけど(たぶん)
0794デフォルトの名無しさん
NGNG0795デフォルトの名無しさん
NGNG0796デフォルトの名無しさん
NGNG0797デフォルトの名無しさん
NGNG0798デフォルトの名無しさん
NGNG最近は中学高校でも情報科目が導入されているから、だんだん改善されていくんじゃないのかね。
0799デフォルトの名無しさん
NGNG0800デフォルトの名無しさん
NGNG0801デフォルトの名無しさん
NGNG6年かけてそれだけじゃ悲しすぎるな。
0802デフォルトの名無しさん
NGNG0803デフォルトの名無しさん
NGNG0804デフォルトの名無しさん
NGNG}
のカッコの中で、str が空白行(スペース、タブと改行のみの行)であれば
continue したいのですが、その判別はどうすればよいのでしょうか。
よろしくお願いします。
0805デフォルトの名無しさん
NGNG判定のための関数を関数を作るのがよい。
int kuhakudake(const char *s)
{
for(;*s;s++)
/* if(!isspace(*s)) */
if(!(*s==' '||*s=='\t'||*s=='\n'))
return 0;
return 1;
}
0807805
NGNGif(kuhakudake(str))
continue;
}
こんな風に使う。
ださい関数名は自分で何とかして。
0808804
NGNGやっぱこうやって一文字ずつ確認するしかないですか?
Cって正規表現とか使えないのでしょうか?
0809デフォルトの名無しさん
NGNGC言語はテキスト処理苦手な言語です。
0810デフォルトの名無しさん
NGNG用意されているか、自分で作るかの違いでしかない。
0811810
NGNG○一文字づう
0812デフォルトの名無しさん
NGNGそこまで大掛かりじゃなさそうだけど。
C で書く前に、本当で C でやらなければいけないのか(Perl や
シェルスクリプトを使えないか)よく考えた方が良い。
0814デフォルトの名無しさん
NGNG805さんのと根本的には変わりはない
0815805
NGNGそうだ。うってつけのがあったんだ。
サンキュー
if(!strpbrk(str," \t\n")) continue;
これで一発だな。
0817デフォルトの名無しさん
NGNGofstream os; os.open("test.xml");
os << "<?xml version=\"1.0\" encoding=\"UTF-16\" ?><mtf>";
中略
os << "<mtf/>";
os.close();
あるいは、Unicodeでファイルを保存するにはofstreamを使ってはいけないのでしょうか?
titn
0818デフォルトの名無しさん
NGNGofstream os; os.open("tgt.tmp");
os << "<?xml version=\"1.0\" encoding=\"UTF-16\" ?><mtf>";
中略
os << "<mtf/>";
os.close();
あるいは、Unicodeで保存するにはofstream意外を使うのでしょうか?
0819デフォルトの名無しさん
NGNG0820804
NGNG関数側
int isemptyline(char *s){
char *tmp = s;
printf("this%s\n", tmp);
for(; *tmp!='\0'; tmp++){
printf("%c", *tmp);
if (!(*tmp==' '||*tmp=='\t')){
return 0;
}
}
return 1;
}
呼び出し側
while(fgets(str, 512, file) != NULL){
if ((ptr=strchr(str, '\n'))!=NULL){
*ptr='\0';
}
if (isemptyline(str)){ /* skip empty line */
printf("space line\n");
continue;
}
処理
}
0821820
NGNGisemptyspace が 0 を返してしまうようなんです。
0822デフォルトの名無しさん
NGNGそのままコンパイルしてうまく動きましたけど
0823デフォルトの名無しさん
NGNG順にソースを追っていって見て
0825デフォルトの名無しさん
NGNGなんだっけ。日本語プログラミングのやつっしょ?
0826820
NGNGが、実行したいファイルではうまくいきません。
よく分かりませんが、フォントか何かがまずいみたいです。
emacs で編集しているのですが、下のほうのバーに
実行したいファイルの方は (Text) と書かれています。
これを別のファイル名にコピーして emacs で開くと、(Fundamental) と
書かれており、^M という文字が全ての行(のおそらく改行位置)に現れます。
しかも、この ^M を手動で取り除くと、うまく動くようです。
多分、改行のフォントが異なるのだと思うのですが、
これはどうすればよいのでしょうか?
0827デフォルトの名無しさん
NGNGこれはだめかな?
int isemptyline(const char *s){
// printf("this : %s\n", s);
while(*s == ' ' || *s == '\t') ++s;
if(*s == '\r' || *s == '\n' || *s == '\0'){
return 0;
}
for(;*s;++s) putchar(*s);
return 1;
}
int main()
{
char line[256];
FILE *in = fopen("test.txt","r");
while(fgets(line,sizeof(line),in)){
if(!isemptyline(line)){
printf("space line\n");
}
}
}
0828デフォルトの名無しさん
NGNGwofstream を使う。
あと、文字列リテラルの前に L を付ける。
古いコンパイラによっては自分で typedef する必要があるかも。
mbstowcs/wcstombs とかも参考に。
// typedef basic_ofstream<wchar_t> wofstream;
wofstream os;
os.open("tgt.tmp");
os << L"<?xml version=\"1.0\" encoding=\"UTF-16\" ?><mtf>";
中略
os << L"<mtf/>";
os.close();
0829828
NGNGC++ スレと両方見てるから感覚なくなってたわ。
0830デフォルトの名無しさん
NGNG0831デフォルトの名無しさん
NGNGatoiの中身は分かったのですがitoaが分かりません(TT)
お願いします。
0832デフォルトの名無しさん
NGNGhttp://endou.kir.jp/yuminet/link.html
0833デフォルトの名無しさん
NGNGスレ違い。
つーか、マルチポストしてんじゃね。
0834デフォルトの名無しさん
NGNGatoiがわかればitoaもわかるべ
逆のことやればいいんだよ。
0835デフォルトの名無しさん
NGNG0836デフォルトの名無しさん
NGNGhttp://www.atmarkit.co.jp/flinux/rensai/linuxtips/164linendm.html
http://linux.ascii24.com/linux/allascii/linuxmag/2001/06/09/626472-004.html
フォントは、画面に表示するときに使う書体なんで、こいつ悪くない。
文字コードだね。
0837836
NGNG0838デフォルトの名無しさん
NGNG空白文字と水平送り文字のほかに復帰文字も空白扱い汁。
0839805
NGNGそうかも
じゃあif(strspn(str," \t\n")==strlen(str)) continue;
これならOKかな。
0840デフォルトの名無しさん
NGNGするにはどうすればいいですか?
0841デフォルトの名無しさん
NGNG>>1-2
0842デフォルトの名無しさん
NGNG★http://endou.kir.jp/moro/linkv.html★
0843デフォルトの名無しさん
NGNGプログラム内の
system("notepad");
はnotepad が同期呼び出しなのでここで処理がまたされます。
おなじように
system("xyzzycli.exe");
を実行したいのですが、xyzzycli.exe は非同期で呼び出されるために、すぐに処理がもどってきてしまいます。
notepad と同じような挙動にしたいのですが、どうしたらよいのでしょうか?
コンパイラはMinGWをつかってます。
0844デフォルトの名無しさん
NGNG標準じゃ無理。
forkしてexec*
0845844
NGNG0846デフォルトの名無しさん
NGNG0847844
NGNG・・・・wait?
0848デフォルトの名無しさん
NGNG---------- test.bat ----------
xyzzycli.exe -wait a.txt
echo -waitがある場合
xyzzycli.exe a.txt
echo -waitが無い場合
pause
---------------------
a.batをxyzzycli.exeのある場所において実行して見てくれ。
0849デフォルトの名無しさん
NGNG0850デフォルトの名無しさん
NGNG結局ソフトの使い方の問題だったけど、質問者はそう思っていなかったみたいだからいいんじゃない?
0851843
NGNGxyzzycli.exe -wait
とやってもすぐに帰ってきてしまいますね。
同期プログラムは新しくスレッド作ってやれば非同期に出来ますが、
非同期のすでにあるプログラムに同期処理させるのは外部からどう
がんばっても無理なのかな・・・?
0852843
NGNGありがとうございます。
ソフトの使い方というのも、うすうすわかってましたが、cの関数内でどうにかできないかなという期待もあっての質問でした。
どこで質問しようか迷いマシた。
とりあえずそれでやってみます。
0853843
NGNGcでやるなら system("xyzzycli.exe -wait filename");
でしょうか。
bat、shで十分ですけどね・・・。
0854デフォルトの名無しさん
NGNG0855デフォルトの名無しさん
NGNG2003/1/1 → 2003/1/1 = 1日
2003/1/1 → 2003/1/2 = 1日
2003/1/1 → 2003/1/5 = 4日
とするにはどうすればいいのでしょうか?
0856デフォルトの名無しさん
NGNG0857デフォルトの名無しさん
NGNG0858デフォルトの名無しさん
NGNGライブラリ持ってないアマグラマ
ハケーン
0859デフォルトの名無しさん
NGNG0860デフォルトの名無しさん
NGNG0861デフォルトの名無しさん
NGNG0862デフォルトの名無しさん
NGNG倍 (double) 精度浮動小数点
0863デフォルトの名無しさん
NGNGどうもテンキュです
0864デフォルトの名無しさん
NGNG別のファイルfunc.cに実装し、main から呼び出して使いたいです。
func.c を gcc -c func.c でオブジェクトファイルにした場合、
test.c 側から呼び出すにはどうすればよいのでしょうか。
0865デフォルトの名無しさん
NGNG#include <stdio.h>
#include <math.h>
#define PI 3.14159265358979323846
#define N 100
main(){
return 0;
}
int sigma(a,d){
int i,b[N];
double s=0;
seiki(a,d,b[]); (★)
for(i=0; i<N; i++){
s = s + b[i];
}
return s;
}
seiki(a,d,b[]){ (★)
int i, seed, random,b[N];
seed = 2;
srand(seed);
for(i=0;i<N;i++){
random = rand()*4/randmax;
b[i]=sqrt(N/2/PI)/a/d/d*exp((-1)*random*N/2/a/a/d/d);
} }
0866デフォルトの名無しさん
NGNGそうですか。お大事に。
0868デフォルトの名無しさん
NGNGgcc -c -o func.o func.c
gcc test.c func.o
0869デフォルトの名無しさん
NGNG処方箋は C の参考書の関数と配列(かポインタ)の部分を
一から読み直すことだな。
0870865
NGNGありがとうございました☆
0871デフォルトの名無しさん
NGNGコード体系の違いだろ。
おそらく、EUC(改行:LF)コードの環境で、
Shift-JIS(改行=CR+LF)コードのテキストを処理しようとしてるんだろ。
0872デフォルトの名無しさん
NGNG他のマシンで実行させることなどはできるのでしょうか?
例えば、あるマシン local 上の main() から、
別のマシン remote 上で test() という関数を実行するとか、もしくは、
test というコマンドor実行ファイルを実行するとか。
ご教授お願いいたします。
0873デフォルトの名無しさん
NGNG0874デフォルトの名無しさん
NGNG0875デフォルトの名無しさん
NGNG0876デフォルトの名無しさん
NGNG0877デフォルトの名無しさん
NGNGstruct aaa {
int (*bbb)( ZZZZ *ggg, void *lll );
int (*ccc)( ZZZZ *ggg );
};
とあって
意味は構造体aaaに定義された関数が二つ
名前は*bbbと*ccc(ポインタ)でZZZZ等は引数
返り値はintと解釈するのでしょうか?
全然ちがったらごめんなさい
0878デフォルトの名無しさん
NGNG0879デフォルトの名無しさん
NGNG違う。構造体に関数そのものはもてない。
ZZZZ *とvoid *を引数に取り、intを返す関数へのポインタbbb
ZZZZ *を引数に取り、intを返す関数へのポインタccc
上記二つをメンバーに持つ構造体aaa
0881デフォルトの名無しさん
NGNG代入しないと使えないからな
0882デフォルトの名無しさん
NGNGJavaでいうリフレクションみたいなもの?@@
0883デフォルトの名無しさん
NGNGJavaもリフレクションも知らないけど、あくまでポインタなので、参照するもの(すなわち関数本体)のアドレスをいれてあげないと使えない。
int kansu(ZZZZ *a,void *b)
{
/* 中略 */
}
int main()
{
struct aaa obj={kansu,NULL}; /* メンバーaaaをkansuのアドレスで初期化 bbbはNULLに */
ZZZZ z;
obj.aaa(&z,NULL);
return 0;
}
こんな感じで使えるはず。
0884883
NGNGstruct aaaのaaa以外のaaaをbbbに置き換えて。
0885883
NGNG{
/* 中略 */
}
int main()
{
struct aaa obj={kansu,NULL}; /* メンバーbbbをkansuのアドレスで初期化 cccはNULLに */
ZZZZ z;
obj.bbb(&z,NULL);
return 0;
}
0886デフォルトの名無しさん
NGNG0887デフォルトの名無しさん
NGNGそうですね^^;;
>>885
ここでbbbっていうメンバ名を指定する必要があるからヘッダー
ファイルで定義しているのですね@@(なるほど)
指定できる関数の範囲はpublicとかprivateとかで指定できるの
でしょうか?(まず関数にスコープの指定ができるのか知らない
です(?_?))
0888デフォルトの名無しさん
NGNG構造体内はみんなpublic
0889デフォルトの名無しさん
NGNGint a,char *pなどを一つにまとめたものでしかない。
0890デフォルトの名無しさん
NGNG何かもやもやしていたものがスッキリしました^^;
ありがと〜
0891デフォルトの名無しさん
NGNG標準Cでは無理。とりあえず、JDKもって、【RMI】だ。
0892デフォルトの名無しさん
NGNG正直C言語ってこんなにエゲつないものとは思わんかった・・
JAVAならもっと楽に実装できますかね?>JAVAもされてる方
0893デフォルトの名無しさん
NGNG(形)
〔「いげちない」の転〕
(1)度を過ごして露骨に表現するさま。露骨で、いやらしい。
「―・いことを言う」
(2)やり方に思いやりや人情味がない。情け容赦もない。
0894デフォルトの名無しさん
NGNG0895デフォルトの名無しさん
NGNG0896デフォルトの名無しさん
NGNG0897デフォルトの名無しさん
NGNGCに挫折した奴が使いやすいようにポインタを見せないようにしたって。
その所為で、まともなCプログラマからは却って使いにくくなったけど。
まぁなんだ、お蔭でC++に移行しやすくなったとも言えるがな。
0898デフォルトの名無しさん
NGNG0899デフォルトの名無しさん
NGNGメモリー使い回す。
0900デフォルトの名無しさん
NGNG同じ変数を複数の用途に使うということですか?
0901デフォルトの名無しさん
NGNGchar s[5];
s[0]="*";
↑これって何でエラーになるんですか?
0902デフォルトの名無しさん
NGNG型が合わないから
s[0]='*';
0903デフォルトの名無しさん
NGNG言い得て妙
0905デフォルトの名無しさん
NGNGこれってよく知られた方法なんでしょうか?
for( i = INT_BIT-1; i >= 0; i-- )
printf( "%d", !!( data & 1 << i ) );printf( "\n" );
0906デフォルトの名無しさん
NGNG三項演算子を使え。
0907デフォルトの名無しさん
NGNG0908907
NGNG俺は普通、iをbitマスクにして最上位からビットシフしていくな。
それと間違えた。ト
0909デフォルトの名無しさん
NGNGmain(){
int a;
printf("正の値を打ち込んでください。");
scanf("%d",&a);
a=((a+5)/10)*10;
printf("一の位を四捨五入してみました。%d \n",a);
return 0 ;
}
こんなプログラムを作ったんですが、正の値が上限(?)かなにかを越えると
うまく作動しないんですがなぜでしょうか?
また、上限を完全に無くすことは可能でしょうか??
よろしくおねがいします。
0910デフォルトの名無しさん
NGNG分かっていて聞いているだろ?
0911デフォルトの名無しさん
NGNG/* 中略 */
b=a%10;
if(b>=5)
a+=10-b;
else
a-=b;
0912デフォルトの名無しさん
NGNGint main( void )
{
double *hage, *nuge;
hage = (double *)malloc( sizeof( double ) * 10 );
printf("\nhage : %p", hage);
free(hage);
nuge = (double *)malloc( sizeof( double ) * 100);
printf("\nnuge : %p", nuge);
free(nuge);
return(EXIT_SUCCESS);
}
両方のポインタとも同じ値になっても良いと思うんですが
間隔があくのはなぜですか?
hageのあとに直ぐフリーしてもhageの前後には別の値が入ってて
同じ大きさしか旧hage領域に入れない…と考えれば良いですか?
あと、あいた間隔はOS(処理系?)が有効活用してくれるのでしょうか?
0913デフォルトの名無しさん
NGNG0914デフォルトの名無しさん
NGNGmain関数に到達するまでのコード(コンパイラが挿入するコード)
ですでにheapを使っており、その結果としてフラグメントが発生した。
たとえば空き領域が1000バイトと空き領域が50Mバイトなど。
hage = (double *)malloc( sizeof( double ) * 10 );
では1000バイトの空き領域がつかえるが、
nuge = (double *)malloc( sizeof( double ) * 100);
では1000バイトの空き領域を使えないので50Mバイトの
空き領域を使った。
こんなでどうでしょう。
ポイントはheapを使用するのはわれわれが書いたコード
だけではないということです。
0915914
NGNGあと、heap管理プログラムがブロック(mallocのサイズ)によって
使用する空き領域を分けているということも考えられる。
数十バイト程度の要求と数K単位の要求を同じ空きブロック領域で
行うと、フラグメントの発生でheakの使用効率が悪くなる。
0916デフォルトの名無しさん
NGNG可能?
0917デフォルトの名無しさん
NGNGコンパイル可能だとしても、結果は未定義。
0918デフォルトの名無しさん
NGNG0919デフォルトの名無しさん
NGNG派遣先でちょちょいのちょい
0920デフォルトの名無しさん
NGNG氏ね。おまえは二度とCを使うな。破門だ。
0921デフォルトの名無しさん
NGNG0922デフォルトの名無しさん
NGNG0923デフォルトの名無しさん
NGNG住所とかメモリの確保とかはわかるけどそれをどういうふうに使うと効果的なんですか?
0924デフォルトの名無しさん
NGNG必要ないときは無理に使わなくてもいい。
0925デフォルトの名無しさん
NGNG0926デフォルトの名無しさん
NGNG0927デフォルトの名無しさん
NGNG機械語レベルではメモリはすべてアドレス(=ポインタ)で参照します。
プログラマがポインタを使わなくても、コンパイラはつかってます。
ポインタを使うとそれだけプログラマの自由度が増すということです。
0928デフォルトの名無しさん
NGNGそんな内部的な話してどうすんだよ。
0929923
NGNG0930【中吉】
NGNG0931デフォルトの名無しさん
NGNG0932デフォルトの名無しさん
NGNG0933923
NGNGそんな関数を作らなければいいんですよね?マクロにすれば。
0934デフォルトの名無しさん
NGNGじゃぁ、構造体a,bの中身を入れ替える関数。
0935デフォルトの名無しさん
NGNG関数に文字列を渡すとか
0936934
NGNG0937デフォルトの名無しさん
NGNGコマンドライン引数をつかうとき。
0938デフォルトの名無しさん
NGNGそうすればポインタがないとこまることにぶつかるから。
0939923
NGNGポインタでしかできない事が入ってるソースで解説してくれませんか?
0940923
NGNG0941デフォルトの名無しさん
NGNGそういうんじゃだめ?
全部自分でつくる? ポインタ使わないで(無理だけど)。
0942デフォルトの名無しさん
NGNG共用体とかビットフィールドならまだしも・・・・
0943デフォルトの名無しさん
NGNGたとえばどんな?
0944デフォルトの名無しさん
NGNGどうすればよいのでしょうか。
よろしくお願いします。
0945デフォルトの名無しさん
NGNG0946デフォルトの名無しさん
NGNGスレ違いだが、popenを使ってみぃ
0947944
NGNGもしくは、普通のコマンド。
標準出力に結果を出します。
0948944
NGNG使い方が分からないので、
使い方、もしくは参考ページを教えてもらえませんか?
0949デフォルトの名無しさん
NGNG心配するな。どんな変な癖がついても、ポインタ使わずにまともアプリは作れないから。
つまり今あんたは、まだそういうレベルに達していないと言うこと。
ポインタ以外にも覚えることはある。
そういうのをすっ飛ばしてポインタだけ覚える方が変な癖がつくと思うよ。
0950デフォルトの名無しさん
NGNG0951デフォルトの名無しさん
NGNGマニュアル持っていないの?
標準じゃないからpopenがあるかどうかは分からない。UNIX系ならまずあるだろうけど
0952デフォルトの名無しさん
NGNGmain(){
FILE *pf;
fopen(fp,"data.txt","w"); /* ファイル構造体のポインタを使わなければファイルを扱えない*/
while(fgets(fp,buf,BUFZISE)){
/* : */
}
fclose(fp)
}
0953デフォルトの名無しさん
NGNGおーい、fopenの使い方が違うぞー
0954デフォルトの名無しさん
NGNG0955952
NGNG0956デフォルトの名無しさん
NGNG0957デフォルトの名無しさん
NGNG可哀想だからpfとfpも突っ込んでやれよ
0958952
NGNG0959デフォルトの名無しさん
NGNGある意味すごいね。
0960デフォルトの名無しさん
NGNGそんな質問しても、あんまり意味なくねー。
ポインタってもっと深い、ポインタだけで本も出てるしな、読んだことはないけど。
ここでどんな例がでてもポインタの一面を見ているにすぎない。
ポインタをポインタそのものとして受け止めれるように勉強しろ。
0961デフォルトの名無しさん
NGNGほ、惚れた・・・・
0962デフォルトの名無しさん
NGNG0963デフォルトの名無しさん
NGNGif( lp == NULL ) lpはNULLポインタが入っている
と
id( i == NULL ) iはint型
は、NULLマクロでポインタと整数値を比べていますけど、なぜこういうことが可能なんでしょうか?
0964デフォルトの名無しさん
NGNGポインタでしか出来ない事
p=malloc(n);
0965デフォルトの名無しさん
NGNG0966デフォルトの名無しさん
NGNG「ええ〜? なにそれ〜、パァ子わかんな〜い」って
情報隠蔽と似て非なる思想の持ち主が多い
ソフト作るより使え、それに向いている
せいぜい配列でリストでも作って遊んでろ
0967デフォルトの名無しさん
NGNG多分
#define NULL 0
になってる処理系を使ってるんだと思うが、
だからといって NULL と整数値を比べるべからず。
0968デフォルトの名無しさん
NGNGNULLは各変数等々他の全てのポインタが取りうる値と一致しない事が保証されてる値
0969デフォルトの名無しさん
NGNG逆だろ。
0970デフォルトの名無しさん
NGNG整数値とポインタを比べることはできる。警告は出るだろうが。
0971デフォルトの名無しさん
NGNG0972デフォルトの名無しさん
NGNGUNIXとLinuxはどちらがCの開発に向いているんでしょうか?
0973デフォルトの名無しさん
NGNGUnixとLinuxの違いを調べてきたら答えてあげる。
0974デフォルトの名無しさん
NGNGLinuxはペンギンたんでふ
0975デフォルトの名無しさん
NGNG0976デフォルトの名無しさん
NGNGOS関係ないだろ。何を作るんだよ。
0977デフォルトの名無しさん
NGNGnullとかにすればいいのに
0978デフォルトの名無しさん
NGNG0979デフォルトの名無しさん
NGNG予約語の意味を勉強し直して来て下さい
0980デフォルトの名無しさん
NGNGヌルポインタは 0 で表現する、と決めちゃったから、
別な予約語を導入したくなかったんじゃないの?
0981デフォルトの名無しさん
NGNGポインタのNULLは無効なポインタということ。
ところがポインタに無効なという情報をもてないので普通は
#define NULL 0
で0番地を犠牲にしているのです。
まあ、アプリケーションプログラムが0番地を参照することは
なかろうということからです。
よくNULLは0であることを前提にしているコードを見るがこれは
問題あり。
#define NULL 0xffffffff
でも理屈からしたらよいわけです。
>>923
ポインタはどちらかというと高度というよりは原始的なものです。
Cでポインタを使わないプログラムを作れますが、Cのよさはその
原始的なところにあるので、ぜひマスターしましょう。
0982デフォルトの名無しさん
NGNG0983デフォルトの名無しさん
NGNGだめだろ。
NULLは0か(void *)0
それのビットパターンが全て0とは限らないけど。
0984デフォルトの名無しさん
NGNG> #define NULL 0xffffffff
それはだめだ!
0985デフォルトの名無しさん
NGNG>ヌルポインタは 0 で表現する、と決めちゃったから、
その手のネタは、飽きるほどやってるから、やめて
0986デフォルトの名無しさん
NGNG0987デフォルトの名無しさん
NGNG0なら全てのビットパターンが0になる事は保証されてたはず
0988683
NGNG大変勉強になりました
お礼にバナクリしてきます
0989デフォルトの名無しさん
NGNG#define NULL 0かつ、int a=NULL;とかやったらね。
ポインタとして使うという意味に決まっているでしょ・・・
0990デフォルトの名無しさん
NGNG0 というリテラルを整数値として使うならそうだろうが。
こういう場合、0 だけが表示されるとは限らない。
int i;
void *p = 0;
for(i = 0; i < sizeof (void *); i++) {
printf("%d\n", ((char*)&p)[i]);
}
0991デフォルトの名無しさん
NGNGhttp://www.catnet.ne.jp/kouno/c_faq/c5.html#0
0992デフォルトの名無しさん
NGNGポインタであればかなら何かさしているだろ。
どんなデータだって同じメモリの中に格納できるんだから。
0993デフォルトの名無しさん
NGNGC言語ではNULLは内部的には、何処を指していようが構わない
その処理系でNULLである事が一番自然なポインタを指せば良い
また、全ての有効なポインタは0を指さない事が保証されている
また、0とNULLを比較しても等しい事が保証されている
結果、NULLを0にしてる処理系が圧倒的に多い
0994デフォルトの名無しさん
NGNGまだ前スレが1000行っていないというのにこちらは1000目前とは。
0995デフォルトの名無しさん
NGNGス
レ
0996デフォルトの名無しさん
NGNGC言語なら俺に聞け! Part 59
http://pc2.2ch.net/test/read.cgi/tech/1056109884/
0997デフォルトの名無しさん
NGNG疲れるが釣られてやる。
int a; で &a とか
int* p = malloc(10 * sizeof (int)); の p とか
そういう風に得られたどんなポインタと比較しても
一致しないことが保証されているのがヌルポインタだ。
0998デフォルトの名無しさん
NGNG0999デフォルトの名無しさん
NGNG1000デフォルトの名無しさん
NGNG10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。