C言語のことは漏れらに聞け!!<サンキュー>
レス数が1000を超えています。これ以上書き込みはできません。
0001前スレ949
NGNG・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/
・前スレ <38>
http://pc3.2ch.net/test/read.cgi/tech/1035729526/
コンパイラ、過去ログなどのリンクは>>2-5 あたり
0002デフォルトの名無しさん
NGNG0003前スレ949
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
さらにコピペ
0004デフォルトの名無しさん
NGNG0005前スレ949
NGNG0006前スレ955
NGNG0007デフォルトの名無しさん
NGNGああ・・
0008デフォルトの名無しさん
NGNG0009デフォルトの名無しさん
NGNGいや、ダメすぎ。
0010955
NGNG宣伝スマソ
0011デフォルトの名無しさん
NGNG0012デフォルトの名無しさん
NGNG無駄の多い処理ですな。
0013デフォルトの名無しさん
NGNG0014デフォルトの名無しさん
NGNG適当なソースコード探してきて比較して見な。全然違う。
0016デフォルトの名無しさん
NGNG鬱だ・・・
0017デフォルトの名無しさん
NGNG今どこにいるんだと小一時間・・・
0018デフォルトの名無しさん
NGNG0019デフォルトの名無しさん
NGNGa^bはビットごとのXORですが。
べき乗(だっけ?)ならpow()で。
0020デフォルトの名無しさん
NGNGpow(a,b);
でいいんじゃなかったっけ?
違かったらスマソ。
0021デフォルトの名無しさん
NGNGchar *sp;
sp = s;
printf("s = %d\n", sizeof(s));
printf("sp = %d\n", sizeof(sp));
これが同じにならないのは何故ですか?
0022デフォルトの名無しさん
NGNG何故って…型が違うだろ?
0023デフォルトの名無しさん
NGNG0024デフォルトの名無しさん
NGNG下はポインタのサイズ(きっと4バイトだろ?)
上は配列のサイズ(512バイト)
0025デフォルトの名無しさん
NGNG何もしないのも多いと思いますし、必要ないともおもえるんですが...
0026デフォルトの名無しさん
NGNG0028デフォルトの名無しさん
NGNGできない。
だから一部の標準関数はサイズを引数として渡す。
0030デフォルトの名無しさん
NGNGお願いいたします。
0031デフォルトの名無しさん
NGNG夕方あたりにちゃんと書いたのに無視なんですか?
悲しいです。
0032デフォルトの名無しさん
NGNG本に載っていないのかな・・・
#include <stdio.h>
int main()
{
int (*myputs)(const char *);
myputs=puts;
myputs("putsと同じように使える。");
return 0;
}
003332
NGNG実際はqsortライブラリ関数なんかでうまく使われているよ
0034デフォルトの名無しさん
NGNGそれが分かってれば、前スレの終わりには関数へのポインタを使ったのがいくつかあったと思うが。
0035デフォルトの名無しさん
NGNG疑問なんだが、なぜ4バイトだと思う??
2バイトじゃないのか?
#include<stdio.h>
main()
{
int* a;
long* b;
char* c;
double* d;
puts("int* a");
puts("long* b");
puts("char* c");
puts("double* d");
printf("\n");
printf("sizeof a...%d\n",sizeof a);
printf("sizeof b...%d\n",sizeof b);
printf("sizeof c...%d\n",sizeof c);
printf("sizeof d...%d",sizeof d);
}ちなみに漏れのポインタ変数の確保するサイズは2バイト。
0036デフォルトの名無しさん
NGNGMS-DOSとか使ってる?
0037デフォルトの名無しさん
NGNG0038デフォルトの名無しさん
NGNGOSはWindowzeだけど。
0039デフォルトの名無しさん
NGNGどういうことですか?
詳しく聞きたいです。
0040デフォルトの名無しさん
NGNG「きっと」4バイト、と書いてある。
無論ポインタのサイズなどは処理系によって違う。
今ポピュラーな環境だとポインタサイズは大抵4バイトといっても
強ち間違いじゃないと思う。
ポインタサイズが2バイトの処理系というと、MS-DOSのsmall modelやら、
com (tiny) modelなんだろう。処理系で言うとLSI-C 86あたりか。
LSI-C 86の試食版でもfarポインタは扱えたと思うんで、
ポインタをfar修飾すればサイズは4バイトになる。
重ねて言うが、処理系によってこの辺は違う。
0041デフォルトの名無しさん
NGNGCPUがどんな感じにメモリを管理しているかの問題。
0042デフォルトの名無しさん
NGNG>>41
ありがとうございました。
>>40
かなりの知識の持ち主ですね。
前橋のポインタ完全制覇とか余裕そうです。
ちなみに、LSI-C(試食版)を使っております。
0043デフォルトの名無しさん
NGNGここにいる奴の半分以上は余裕だと思われ。
複雑なようでわかれば簡単と。
0044デフォルトの名無しさん
NGNG仕事にするなら完全制覇した上で就くのが当然。
それもやらんとゴミプログラマ雇ってる奴らが(以下略)
勉強がんばり〜。
0045デフォルトの名無しさん
NGNGもっと勉強します。
あと多少マルチスレッドになるんですが、
#include<stdio.h>
main()
{
char* color_name[]=
{
"hoge",
"piyo",
"hoge_p"
};
printf("%d\n",color_name); /*?*/
printf("%d\n",color_name+1); /*?+2*/
printf("%d\n",color_name+2); /*?+4*/
/*これは何故2バイトずつ進むのでしょうか?
char配列を指しているので、1バイトずつ進むと思うんですが*/
puts("");
printf("%s","aiueo");
}/*お願いします。*/
0046デフォルトの名無しさん
NGNG他にもatexitとかな。標準関数じゃないけどsignalとか。
signalのプロトタイプを初めて見たときは頭が真っ白になったよ(w
0047デフォルトの名無しさん
NGNGsnprintfが使えない人たちってどうやって回避してるのですか?
やっぱC FAQの例みたいにファイルに書いたりしてるのでしょうか?
0048デフォルトの名無しさん
NGNGcolor_nameはcharの配列ではない。charのポインタの配列だ。
配列に入っているのは(char *)だ。
0049デフォルトの名無しさん
NGNGArigatou
がんばります。
0050デフォルトの名無しさん
NGNGC言語をはじめた3ヶ月、ほぼマスターしました。
ただまだGUIを使ったPGが作れません。何からはじめたらいいでしょうか?
0051デフォルトの名無しさん
NGNG環境は?
0052デフォルトの名無しさん
NGNGsignalは標準
0053デフォルトの名無しさん
NGNG堅牢性が最重要のプログラムで、
printfに渡すパラメータが信用できないときは
ファイルに一度書くだろうな。
そうでないときは、えいやってやっちゃうこともある(w
ま、大抵snprintfが使えるのでそっちを使っちゃうけど。
0054デフォルトの名無しさん
NGNGメモリの中では
color[0]つまり*(color_name) には hogeの先頭アドレスが、
colo [1]つまり*(color_name+2)には piyoの先頭のアドレスが、
color[2]つまり*(color_name+3)には hoge_pの先頭のアドレスが、
入っているんじゃないんでしょうか?
具体的に教えていただけると助かります。
0055デフォルトの名無しさん
NGNG>>48
メモリの中では
color_name[0]つまりcolor_nameにはhogeの先頭アドレスが、
colo_name[1]つまりcolor_name+2にはpiyoの先頭のアドレスが、
color_name[2]つまりcolor_name+3にはhoge_pの先頭のアドレスが、
入っているんじゃないんでしょうか?
具体的に教えていただけると助かります。
0056デフォルトの名無しさん
NGNGその通り。で、その先頭アドレスが君のLSI-C試食版だと2バイトなのよ。
0057デフォルトの名無しさん
NGNG0058デフォルトの名無しさん
NGNGレスありがとうございます。
幸いsnprintfが使えるようですので、これを使います。
0059デフォルトの名無しさん
NGNGここ、激しく間違いネ。まだ54の方が間違いが少ないネ
0060デフォルトの名無しさん
NGNGマルチポストってなんでしょうか?
マルチスレッドとは違うスレッドでも同じことを書き込むことですよね?
006150
NGNG何からはじめたらいいでせうか?
0062デフォルトの名無しさん
NGNGPC窓から投げ捨てる。
0063デフォルトの名無しさん
NGNGキミセンスアルヨ
0064デフォルトの名無しさん
NGNGその通り。君の処理系だとポインタサイズは2バイトだったな。
だとすると、こんな感じ。
前橋のポインタ本を持ってるようだから、
(実はおれも持ってる。知り合いなので、ご祝儀に買った(w)
205ページのFig.3-19ポインタの配列を見てくれ。
このようなイメージで格納されている。
配列color_nameの要素はあくまでポインタだ。
配列にはポインタがずらずらと格納されてる。
だから、ポインタのサイズが2のとき、
要素が一つ増えると、アドレスは2増えることになる。
0065デフォルトの名無しさん
NGNG他の開発環境使った方が楽では?
0066デフォルトの名無しさん
NGNGこんなところからはじめてみては?
猫でもわかるプログラミング
http://www.kumei.ne.jp/c_lang/
C言語で始めるWindowsプログラミング
http://web.kyoto-inet.or.jp/people/ysskondo/
0067デフォルトの名無しさん
NGNG知り合いなんですか???
やっぱり前橋さんは凄腕PGなのでしょうか?
0068デフォルトの名無しさん
NGNGむしろ自分の方が凄腕だと。(w
007150
NGNGありがとうございます。試してみます。
極めたらまたきます。
0072HP電卓、■に何が入るのかが分かんない
NGNG#include<stdlib.h>
struct list{ int data;
struct list *next;};
void push(int y);
int pop();
void print_stack()
struct list *head=NULL;
void push(int y){ struct list *p; p=head; head=new list; if(head==NULL){ printf("Stack overflow.\n"); exit(1);} head->data=■; head->data=■;}
int pop(){ int y; if(head==NULL){printf("Stack underflow.\n");exit(1);} y=■;head=head->next;return y;}
void print_stack(){ struct list *p; p=head; while(p !=NULL){ printf("%d",■); p=p->■;} printf("\n");}
int main(){ int x,y,z; char s[10],c; while(1){ scanf("%s",s); c=s[0]; switch(c){
case'+':x=pop()+pop(); printf("%d\n",x); push(x); print_stack(); break;
case'-':x=pop(); y=pop(); z=y-x; printf("%d\n",z); push(z); print_stack(); break;
case'*':x=pop()*pop(); printf("%d\n",x); push(x); print_stack(); break;
case'/':x=pop(); y=pop(); z=y/x; printf("%d\n",z); push(z); print_stack(); break;
case'q':case'Q':exit(1);
default:push(atoi(s));
print_stack();}} return 0;}
0073デフォルトの名無しさん
NGNGしかし、1 は何故 「課題丸投げ禁止」 を書いてくれなかったの?
関連リンクは 2 以降にして、1 は諸注意でかためて欲しかった。
0074デフォルトの名無しさん
NGNGva_end();
ってなってて引数ないじゃん?
これいいの?
0075Zetton
NGNG間違ってると思います。
正誤表はこちら
http://member.nifty.ne.jp/maebashi/seiha/seigo.html
0076デフォルトの名無しさん
NGNGいいよ
0077デフォルトの名無しさん
NGNG0078デフォルトの名無しさん
NGNGつかCじゃ無いじゃん…。
0079デフォルトの名無しさん
NGNG初めて見たとき、シグナルを送るだけなのになんで関数ポインタが必要なんだ?と思ったよ。
シグナルを送るのはraiseだよな(w
0080デフォルトの名無しさん
NGNGパッと見Cに見えるけど何なの?
0081デフォルトの名無しさん
NGNGうーん?
Cの範囲で書いていると思うけど?
なんか見落としているかな・・・
0082デフォルトの名無しさん
NGNG0085デフォルトの名無しさん
NGNGサンクス!
それにしてもとんでもなく多かった・・・。
果たしてこの本使えるのか?
っていうかなんか前橋ってむかつくな
0086デフォルトの名無しさん
NGNG前スレでも似たような事があったな。
0087デフォルトの名無しさん
NGNGなんで?
0088デフォルトの名無しさん
NGNG前スレの>>905
0089デフォルトの名無しさん
NGNGターボシーは2だったよ
0090デフォルトの名無しさん
NGNGサイズオブ・・・・・どうでもいいけど
0091デフォルトの名無しさん
NGNGへぇ、俺にTurboC++5.0Jは4バイトだが。
0092デフォルトの名無しさん
NGNG0093デフォルトの名無しさん
NGNG遅レスだが、ここは宿題すれじゃないから、
そもそも課題をここに投げちゃいかんと思う。
0094デフォルトの名無しさん
NGNGあまりに環境依存・コンパイラ依存の話題禁止
0095コンパイラ
NGNG全然わかりません(泣)
0096デフォルトの名無しさん
NGNG俺その本の第五刷持ってるよ!
23:va_end(ap);に直ってるよ。
>>91
ふ〜ん・・・買って来よ(以下略
0097デフォルトの名無しさん
NGNG0098デフォルトの名無しさん
NGNG俺は中学生なのですべて独学だ
0099デフォルトの名無しさん
NGNGスーパープログラマーKを目指している。
いつかあの鍛え上げられた肉体を手に入れ、
「なぜプログラマがそんな筋肉を……」の問いに
「必要だからだ!!」と答えるのが夢だ。
……問題は、なぜ必要なのかが分からないことだ……
0100デフォルトの名無しさん
NGNG体を鍛えておく必要がある。
とでも言っておけば?
0101デフォルトの名無しさん
NGNG0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNGここはC言語のすれなのだが・・・
0104デフォルトの名無しさん
NGNGレ ス 禁 止
0105デフォルトの名無しさん
NGNG0106デフォルトの名無しさん
NGNG0107デフォルトの名無しさん
NGNG0108デフォルトの名無しさん
NGNG特に 0 除算とかセグメンテーションフォールトとか・・・。
0109デフォルトの名無しさん
NGNG処理系によってはシグナルが飛んでくるかもしれない。
0110108
NGNGありがとうございました。
# C++ の例外の実装ってどうなってるんだろう・・・。
0111デフォルトの名無しさん
NGNGsignal()
0112デフォルトの名無しさん
NGNGC++の例外はハードエラーは補足できないよ。
setjmpとlongjmpに近いと思われ。
0113デフォルトの名無しさん
NGNG0除算はSIGFPE、セグメンテーションフォールトはSIGSEGV
を処理すればできそう
0114デフォルトの名無しさん
NGNG0115デフォルトの名無しさん
NGNGPushDown関数に戻り値(スタックオーバーフローに検出を行い、
エラーの場合エラーコードを戻り値にして返すようになっているか)
という条件がついているのですが意味がよくわかりません。
解説してもらえませんか?
0116デフォルトの名無しさん
NGNG質問の意味がわかりません
0117デフォルトの名無しさん
NGNG用意されたスタック(まあこの場合は配列か何かだろ)以上にデータを積もうとしたらエラーコードを返すってことでしょ。
0118117
NGNGまあ分かると思うが
0119デフォルトの名無しさん
NGNGプログラム言語の前に日本語勉強してくれよと言いたくなる。
0120デフォルトの名無しさん
NGNG2ちゃんねるでわざわざ誤植を指摘すんなよ。
0121ねみー
NGNG何がわからないのかって?
独習Cで「main()関数の引数を指定する」という項目で、コマンド(略)の事が書いてるんですけど
まったく同じコーティングしてビルドしても何もなりません。
VC++を使っております。atoi関数などももう少し詳しく教えて欲しいです
0122デフォルトの名無しさん
NGNG0123デフォルトの名無しさん
NGNGおう、基礎だから勝手に学べ。
0124俺、超初心者
NGNGAというファイルとBというファイルがあります。
Aというファイルで作成した構造体やクラスのオブジェクトと
ファイルBで扱いたいのですが、ヨクワカリマセン!!
HELP!
0125訂正
NGNGAとBの2つのファイルをコンパイスしようと思います。
そこでAというファイルで作成した構造体やクラスのオブジェクトを
ファイルBで扱いたいのですが、ヨクワカリマセン!!
HELP!
0126デフォルトの名無しさん
NGNG「Aというファイルで作成した構造体」をヘッダファイルで定義しろ
AとBの2つのファイルにそのヘッダファイルをincludeしろ
「コンパイス」のやり方は俺は知らん。googleに聞いても分からなかった。
0127デフォルトの名無しさん
NGNGとりあえずincludeしなさい。
0128デフォルトの名無しさん
NGNG例えばforで繰り返し処理してインクリメントしまくったあと
その複文を抜けても、値を維持してるって事?
あとstaticを付けたら、0で初期化されるってマジ?
0129デフォルトの名無しさん
NGNG> 例えばforで繰り返し処理してインクリメントしまくったあと
> その複文を抜けても、値を維持してるって事?
試 し て み ろ 。 す ぐ 分 か る
> staticを付けたら、0で初期化されるってマジ?
マジです。浮動小数点なら0.0、ポインタならNULLで初期化される
ことがANSI-Cでは保証されてます
0130デフォルトの名無しさん
NGNG試しますた。分かりますた。
でもメモリ管理とかまだよく分かってないんで、
いろいろ勉強するYO!
待ってろビルゲイツ。
0131デフォルトの名無しさん
NGNG0132デフォルトの名無しさん
NGNGどうしたらCファイル専用のアイコン(Cとだけ書かれたシンプルなアイコン)
になるんでしょうか?
0133デフォルトの名無しさん
NGNG初心者板にでも行ってファイルの関連付けについてでも教えてもらってください。
スレ違い。
0134デフォルトの名無しさん
NGNGint main()
{
int n, i, j;
char gazo[1000][1000];
n = 5;
for (i = 0; i <= (n-1); i++) {
for (j = 0; j <= (n-1); j++){
if (i == 0 || i == (n-1) || j == 0 || j == (n-1))
gazo[i][j] = '*';
else
gazo[i][j] = ' ';
}
}
for (i = 0; i <= (n-1); i++) {
for (j = 0; j <= (n-1); j++){
printf("%s", gazo[i][j]);
}
printf("\n");
}
return 0;
}
なんで動かないんだーーー
0135デフォルトの名無しさん
NGNGデバッガでトレースしてください。
わからなければ printf() デバッグしてください。
その苦労をサボりたいならすれ違いなので添削スレに逝ってください。
0136デフォルトの名無しさん
NGNGgccだったら-Wallを付けると見つかるけど何か?
0137134
NGNGこのへんがおかしいッポイです。
でもこれの何処がおかしいのかわかりません。
0138デフォルトの名無しさん
NGNG%sを%cにするといいかも
0139134
NGNGすみません、gccじゃないのでよく分からないです。
ごめんなさい。
0140デフォルトの名無しさん
NGNGそこはおそらく君の思ったとおりの動作です。
core dumpする原因はgcc -Wallだと
warning: format argument is not a pointer (arg 2)
とかいうメッセージが出てきます。
0141ななしさん
NGNG>n = 5;
↑
なぜ#defineしないですか。
for (i = 0; i <= (n-1); i++) {
for (j = 0; j <= (n-1); j++){
↑
なぜ素直に i < n で判断しないですか。
>if (i == 0 || i == (n-1) || j == 0 || j == (n-1))
>gazo[i][j] = '*';
>else
>gazo[i][j] = ' ';
↑
なぜわざわざ複雑な条件で'*'や' 'を代入するですか。
もっと簡単に方法があると思うです。
>printf("%s", gazo[i][j]);
↑
>>135さんの言うとおり、printf()を調べるです。
"文字"と(C言語で言うところの)”文字列”の違いって分かるですか?
0143134
NGNG>>138
ちゃんと動作しました。
>>140
そうでした。
>>char gazo[1000][1000];
>>n = 5;
>↑
>なぜ#defineしないですか。
デバッグまがいのことしてるうちにこうなってしまいました。
原因がわかったので直します。
0144134
NGNG>for (j = 0; j <= (n-1); j++){
>↑
>なぜ素直に i < n で判断しないですか。
まったくもって自分はバカでした。
>>if (i == 0 || i == (n-1) || j == 0 || j == (n-1))
>>gazo[i][j] = '*';
>>else
>>gazo[i][j] = ' ';
>↑
>なぜわざわざ複雑な条件で'*'や' 'を代入するですか。
>もっと簡単に方法があると思うです。
ちょっと思いつきませんでした。
>>printf("%s", gazo[i][j]);
>↑
>>>135さんの言うとおり、printf()を調べるです。
>"文字"と(C言語で言うところの)”文字列”の違いって分かるですか?
理解はしてましたが実際使ってみたら忘れてました。
0145デフォルトの名無しさん
NGNGchar型、つまり整数なんて与えたら変なところにアクセスしてしまって・・・
0146134
NGNG不正な処理になってしまったわけですね。
プログラミングは実際に打たないと成長しませんね。
0147デフォルトの名無しさん
NGNG一文字表示させるだけならputchar(gazo[i][j]);でいいんじゃない?
0148未亡人 ◆gLo7a3IgfY
NGNG適当な問題きぼんぬ
0149デフォルトの名無しさん
NGNGここはそういうスレではありません。
Web で検索してください。
1 よ、何故諸注意を書かなかった・・・?
0150デフォルトの名無しさん
NGNGルールを拡張しろ。
ハイスコア機能をつけろ。
ネットランキング機能をつけろ。
ネット対戦機能をつけろ。
0151デフォルトの名無しさん
NGNG問題
自由研究
0152未亡人 ◆gLo7a3IgfY
NGNGじゃあどういうスレなんでつか?
■▲▼
【1:151】C言語のことは漏れらに聞け!!
C言語の事ですが何か?
0153デフォルトの名無しさん
NGNG#include <stdlib.h>
int main(void)
{
int *variable_array=NULL;
int size=0;
char buf[256];
int i;
while(fgets(buf,256,stdin)!=NULL)
{
size++;
variable_array=realloc(variable_array,sizeof(int)*size);
sscanf(buf,"%d",&variable_array[size-1]);
}
for(i=0;i<size;i++)
printf("V_A[%d]...%d\n",i,variable_array[i]);
return(0);
}
このプログラムはどうやったら終わるの?
0154デフォルトの名無しさん
NGNGCtrl+DかCtrl+Zを押せば終わるかも。
0155154
NGNGそのプログラムまずいんじゃないか?
reallocで得た新しい領域の先頭が以前と同じだとは限らないはず。
0156154
NGNG戻り値チェックはしようね。
0157153
NGNGなぜか終わらない・・・。DOS窓からやらんとあかんのかな。
NULLって定数の0にみたいなもんでしょ?それとも^cなん?
>>155
マジ!?これ本に載ってるソースなんだけど。
てかmallocとreallocの違いが良くわからん。
mallocは領域を与えたいとこに対して一回だけ使うんだよね?
reallocはその後ろに伸ばしていくんでないの?
0158153
NGNGすまそ。戻り値チェックってwhileの条件式内のやつでないの?
0159Zetton
NGNG確認:返り値と戻り値って同じ意だよね?
0160154
NGNG見間違ったんだってば。本ということは戻り値チェックは省略か。
fgetsはEOFを検出するとNULLを返すから、DOS窓・・・windowsならCtrl+Zで終わると思うよ。
本当に終わらない?
0161153
NGNG終わらないんでなくて、printf文が実行されん。
0164153
NGNGわり。レス書いてるうちに更新されたみたい。
で、^Cやってみたけど、終了はするんだけどさ
その後printf文で、格納した要素を出力してんじゃん?
そこが何も起きないんだ。
あと>>158マジでわからん。
0165デフォルトの名無しさん
NGNG^ZはEOF入力。
だったはず。
0166デフォルトの名無しさん
NGNG^Cは強制終了。もっともWin9Xなら^Zでも思い通りに動かないけど
0167153
NGNGXPでも一緒か。NTカーネル?だっけ?あれ系?
OSの問題なら、コンパイラがどうこうとかでないのね。
結局malloc使えとな。でもrealloc使った方が見栄えいいよね。
mallocだったらサイズいるもん。
>>162
ごめんだけど、例えばどんな感じ?
0169153
NGNGはい、オレの勘違いだったぁぁ!!!
鬱だ・・・。母さん、死んでいいですか?
0170デフォルトの名無しさん
NGNG0171デフォルトの名無しさん
NGNG| さいたまさいたまさいたま!をやっていいですか?
\____ ________________/
/||ミ V
/ ::::||
/:::::::::::||____
|:::::::::::::::|| ||
|:::::::::::::::||│ / ||
|:::::::::::::::|| ̄\ ガチャッ
|:::::::::::::::||゚ ∀゚) ||
|:::::::::::::::||_/ ||
|:::::::::::::::||│ \ ||
|:::::::::::::::||∧ ∧∩ ..||
|:::::::::::::::|| ゚∀゚)/ .||
|:::::::::::::::||∧ ∧∩ ..||
|:::::::::::::::|| ゚∀゚)/ ..||
0172デフォルトの名無しさん
NGNG0173デフォルトの名無しさん
NGNGどんな時に使い分けるんですか?
0174デフォルトの名無しさん
NGNG楽したい時と格好つけたいとき。
0175( ○ ´ ー ` ○ )
NGNG本の内容を、目で追っていたのですが・・・。
難しく考えるばかりで、進展がない。
0176デフォルトの名無しさん
NGNG日本語がおかしい。
推測で答えると、末尾に追加したいときには
最後のノードへのポインタを保持しておくと便利だ。
0177Zetton
NGNG0178デフォルトの名無しさん
NGNG∩
| |
| |
∧_∧ | | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
( ;´Д`)// < 先生!素人以下の知識しかないプロが居まつ!
/ / \___________________
/ /| /
__| | .| |
\  ̄ ̄ ̄ ̄ ̄ ̄ ̄\
||\ \
||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄
|| || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
.|| ||
0179デフォルトの名無しさん
NGNGサブルーチンは英語。
0180デフォルトの名無しさん
NGNG禁 止
0181デフォルトの名無しさん
NGNGそうかい?英語にもモジュールという単語あるぞ。
0182デフォルトの名無しさん
NGNGネタにマジレス…
0183デフォルトの名無しさん
NGNG0184デフォルトの名無しさん
NGNGいたらさ、P218のソースにmain関数ないんだけども、どういうこと?
0185前橋 ◆81oseo2HKE
NGNG0186デフォルトの名無しさん
NGNG今、C言語で画像処理プログラムを組んでいるのですが、
既製のUSBカメラから画像データを引っ張るにはどのようにすれば
よいのでしょうか?
0187デフォルトの名無しさん
NGNG0188デフォルトの名無しさん
NGNGC は USB をはじめとするデバイスを定義していません。
従って環境依存です。
このスレは純粋に C を扱っているスレなのでスレ違いです。
実際の方法は、カメラのメーカーに問い合わせてください。
0190デフォルトの名無しさん
NGNGいや、普通にありですが。
>>188からスレ違いになったのですか?
なかなか、タイムリーですね。
0191デフォルトの名無しさん
NGNGじゃあCで出来ることはコンソールに文字出して遊ぶくらいですね。
0192前橋 ◆81oseo2HKE
NGNG0193デフォルトの名無しさん
NGNG騙りは犯罪です。通報しました。
0194デフォルトの名無しさん
NGNGint main(void)
{
int hoge[]={1,2,3};
printf("%d ",&hoge[0]); /**/
printf("%d ",&hoge[0]+1); /**/
printf("%d",*(&hoge[0]+2)); /**/
この時、&hoge[0]はメモリ上に確保されるの?
return 0;
}
0195デフォルトの名無しさん
NGNG1. 使用しているチップを特定する。
2. チップのマニュアルを調べる。
3. ドライバを書く。
0196デフォルトの名無しさん
NGNGさすがにトリップ付けたのはやりすぎた。
ゴメソ本物の前橋
0197デフォルトの名無しさん
NGNGコンパイルできない!!なんでだああ!!!
0198デフォルトの名無しさん
NGNGこの実引数あり?
0199デフォルトの名無しさん
NGNGprintfは可変引数で、これをレジスタに割り付けるような
処理系はちょっと考えられないから、まあ、メモリ上にも
存在するといってもいいかもしれない。
実体としては即値で終わり。
し か し 腐 っ た コ ー ド だ な
0200デフォルトの名無しさん
NGNGあり
0201デフォルトの名無しさん
NGNG#define SWAP(X,Y) do{int W; W=X; X=Y; Y=W;}while(0)
とやったらループは無駄だといわれたんだけど、そう?
0202デフォルトの名無しさん
NGNG0203デフォルトの名無しさん
NGNG0204ななしさん
NGNGOSはWindows? Linux? MS-DOS?
それで扱いは変わってくるんだが。
まあ、Windowsだとすると、TWAINドライバを経由して
データを取り込むはずだから、その辺調べてみたらどうよ。
0205デフォルトの名無しさん
NGNG> 実体としては即値で終わり。
この意味がわからん。なんで即値?
0206デフォルトの名無しさん
NGNG普通に{}でかこっただけじゃ駄目なの?
0207デフォルトの名無しさん
NGNGその人に、「最適化って知ってますか?」 と突っ込んでください。
第一 while(0) の何がループなのかと。
do 〜 while(0) は、マクロを関数っぽく記述するのに絶対必要。
if(cond1)
SWAP(a, b);
else if(cond2)
SWAP(b, c);
else
SWAP(c, a);
とか書かれたら、do 〜 while(0) 以外で書いたマクロは対応できない。
で、マクロを関数っぽく扱えるようにするのは、その実装がマクロなのか関数
なのかを使用者に意識させないために必要。
0208デフォルトの名無しさん
NGNGVideo for Windowsご存じない?
0209デフォルトの名無しさん
NGNG>do 〜 while(0) は、マクロを関数っぽく記述するのに絶対必要。
そんなトリッキーなコード書く人間はイランがね。
0210デフォルトの名無しさん
NGNGコンパイルの段階で数値が特定できる場合は、最適化によって即値に変換される。
最適化 OFF だったらどうだか知らない。
0211デフォルトの名無しさん
NGNGどうしてdoを使ってるか説明もできないのに使ってるのかよ…
0212デフォルトの名無しさん
NGNGgetchar() マクロは不要だとでも?
0213デフォルトの名無しさん
NGNG彡 ミ 彡 ミ, ヤ |
,,彡 ミ、、、、、、、、彡 ミ, (⌒) レ | それでも人は生きるんだよ
彡;:;: ミ, ( ヽ ヤ
〜三;:;::::: 彡〜 ノ ノ レ
~~三:;:;:;::::: -=・=- -=・=- 三~~ ヽ ( : ;;
~~彡::;:;:;:;:::.. ___ ,三~~ ( ノ ,,,,, : ;;
~~彡;:;:;:;:;:;:;:. |┴┴| ,ミ~~ ノノ ;'" ,,ノ―、 ,;'
~~彡:;:;:;:;:;:;:;:;. ノ――| ---==ニノ ,;'′ >=ニ(二二二()
,...-''''""~~,::;:;::;::;::;::;' ミ,, ,;'′ ゝ--〈
__,;";;:;;;;;;;;;;;;;;;;;;;;;:;:;:;:;:;:;:; i! ミ,,,,;'′ `ー‐'
::::ミミミ:;:;:;: ミ:: ,;' ̄ ̄ ̄ ̄| \___/
:::::ミミミ:;:;: ミ:::, ,;::''′ |. \/
::::ミミミ:;:;:: ,;+''"~~゙+、~'''''~ | |
::::ミミミ:;:;:;: ,+'" ミ::::: | ━┷━━━┳━━━━━
:::::ミミミ:;:;:;:;: >':;: ミ:: | ┃
::::::ミミミ:;:;:;:;:;../;:;:;: ;:" | ┃
::::::::ミミミミ:;:/;:;:;:;: ,.+'"''-、________|__ ┃
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄;':;:;:;: ,.+'" ミ、 l ┃
0214ななしさん
NGNGついでに、
printf("%d ",&hoge[0]);
printf("%d ",&hoge[0]+1);
printf("%d",*(&hoge[0]+2));
と書くよりは、
printf("%d ",hoge);
printf("%d ",hoge + 1);
printf("%d",*(hoge + 2));
と書いたほうが判り易いから糞コードと言っていると思われ。
(慣れだけかもしれんが)
0215デフォルトの名無しさん
NGNG愛が足りないのですか?
0216209
NGNGそうする理由はちゃんと書いたんだが、その上で不要と言ってるのか?
> で、マクロを関数っぽく扱えるようにするのは、その実装がマクロなのか関数
> なのかを使用者に意識させないために必要。
0217216
NGNG0218デフォルトの名無しさん
NGNG&hoge[0]がhogeのシンタックスシュガーだと分からない人がいると
思って展開して書いたんだけど、絶対いないですよねそんな人。
0219デフォルトの名無しさん
NGNGそういきりたつなよ。のんびりいこうぜ。
0220デフォルトの名無しさん
NGNG0221デフォルトの名無しさん
NGNG0222デフォルトの名無しさん
NGNG嘘です。
0223デフォルトの名無しさん
NGNGRubyだよ
0224デフォルトの名無しさん
NGNGBrainFuck!!!!!!!
0225デフォルトの名無しさん
NGNGごめん。まだ意味がわからん。
hogeがスタック上にあれば即値は無理だと思うのだが。
それともhoge[]のインデックス部分のことを言ってるのかな。
0226デフォルトの名無しさん
NGNG0227デフォルトの名無しさん
NGNGどっかにスレなかったか?
0228デフォルトの名無しさん
NGNG0229デフォルトの名無しさん
NGNG> getchar() マクロは不要だとでも?
俺のコンパイラは getcharで do{}while なんか使ってないな。
0230デフォルトの名無しさん
NGNGコンパイラじゃなくてライブラリって言えよ。
0231デフォルトの名無しさん
NGNGどっちにしてもdo{}while;は定石
役に立つ
立たないのはお前のアルゴリズムが最適でないから
勉強しろよ
0232デフォルトの名無しさん
NGNG0233デフォルトの名無しさん
NGNG0234デフォルトの名無しさん
NGNG問題にしているのは、「&hoge[0]」(ポインタ)に付いてではないのか?
いつから、hoge(配列)の話になったんだ?
0235デフォルトの名無しさん
NGNG他にもあるかな?
0236デフォルトの名無しさん
NGNG0237デフォルトの名無しさん
NGNG単文だからでは?
このスレの半分以上は前スレの話題を引き継ぐな。
c faq読めよ…。
0238デフォルトの名無しさん
NGNG話にならねー。
0239デフォルトの名無しさん
NGNGたかがelseの前で構文エラーになるかならんかの違いだろ。
個々のコーディングスタイルに依存する話を、
誰でも役に立つと決め付けんな。
むしろ邪魔になることもある。
そういう俺は個人的には使ってるけどな。
0240デフォルトの名無しさん
NGNGint main(int argc, char **argv);
int main(int argc, char *argv[]);
0241デフォルトの名無しさん
NGNGああそうか。仮引数のポインタを[]と書くのも構文糖だね。
ポインタを受ける時は配列を受ける時が多いから。
0242デフォルトの名無しさん
NGNGK&R厨が出てくるぞ。
0243225
NGNG> 問題にしているのは、「&hoge[0]」(ポインタ)に付いてではないのか?
> いつから、hoge(配列)の話になったんだ?
多分お前は話を理解できてないな。
その &hoge[0] が即値とどう関係してくるのかという疑問なんだが。
0244デフォルトの名無しさん
NGNG結局好みでしょ?
オレもこの手の問題は通りぬけたけど
マクロなんか全然使わない。
関数書くのが楽しいからw
0245デフォルトの名無しさん
NGNG実行するまで、hoge が決まらない。
実際、コンパイラは lea を吐くと思う。
0246デフォルトの名無しさん
NGNG最近全然書いてない。
SWAP() 程度の処理なら直書きしてる。型もまちまちだし。
0247231
NGNG>型もまちまちだし
マクロは型に依存しないんだよ?
0248デフォルトの名無しさん
NGNG#define isnullstr(str) (!*(str))
/* 空文字列かどうかを判断 */
strlen(str)==0の代わりに*str==0と書いていたけど、分かりにくいんでマクロにした。
0249デフォルトの名無しさん
NGNGおかげでしょうもないバグが起こる可能性がある。
0250デフォルトの名無しさん
NGNGあのマクロの中で定義している変数はなんだ?(^_^;)
#define SWAP(x,y,type) do{type W;・・・と書けば型によらないで使えるけど
0251247
NGNGいちいち関数つくるよりは、直書きの法がいいけどん、
そんな時くらいしかマクロは使えましぇん!
0252最後に質問
NGNGint main(void)
{
int a[]={0,1,2,3,4};
printf("%d",*a); /*出力結果 0*/
return 0;
}/*なぜアドレスをポインタ変数に代入してないのに、
間接参照演算子、以下(*)が使えるのでしょうか?
*が使えるのはポインタ変数(ポインタ配列)にアドレスが
代入されていて、その変数を指している時にしか
使えないと思うんですが・・・*/
0253デフォルトの名無しさん
NGNGそもそも、a[n]って*(a+n)だぜ。
0254デフォルトの名無しさん
NGNG>>1のリンク先にあるC FAQを読んだ方がいい。
0255デフォルトの名無しさん
NGNGにして置いたら?
紛れが少なくなる。
0256デフォルトの名無しさん
NGNG宣言の時以外に使われる[]、つまり添字演算子は*と書いてもほとんど同じだ。
この辺の話は、もうちょい後でじっくり学べ!
今はとりあえず、配列の名前(この場合だとa)を単独で使うと
それは配列の先頭要素へのポインタ(つまりaは*a[0]ってこと)になる。
ただし、これは嘘だ。でも今はこう覚えといて問題なし。
実際オレもそうだったから。安心しろ
0257デフォルトの名無しさん
NGNGaは*a[0]じゃなくて&a[0]
0258256
NGNG0259デフォルトの名無しさん
NGNGもちろん
0260デフォルトの名無しさん
NGNG死ぬべき立場なら潔く割腹。
0261デフォルトの名無しさん
NGNG0262デフォルトの名無しさん
NGNGそれだけを見るとナイスアイディアに見えるが、その調子で作ったマクロが
ずら〜っと並んでいると読む気がしなくなる罠。
漏れは素直に !*str の方が好き。
この程度、読むのに詰まる事も無いだろうし。
0263デフォルトの名無しさん
NGNG0264256
NGNG僕は調子に乗りました。初心者の僕でもわかりそうな質問だったので
がんばってレスを打ちました。そしたら257にやられました。
向こうは3人がかりで僕を攻めました。お父さん、お母さん、
今までありがとう・・・・
これは自殺じゃない!他殺だ!(某あほな自殺者の迷言)
0265デフォルトの名無しさん
NGNG同感。逆のケースだと特にね。
if(*str) {}
if(!isnullstr(str)) {}
前者の方が断然読みやすく書きやすいと思う。
0266256
NGNGでもマギレって?
マグレか?
だとしたらなんの?
0267デフォルトの名無しさん
NGNG/~ ..:::::::!.,___ ,,..、-、,
/ .::::::::::::::`::::::~~""''''ー-,/~:::::::::.`i,
/ .:::::::::::::::::::::;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::: i
/ .:::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::.. |
,/ :::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::. i
,l' ::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::. |
l ::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::: i 生きるって辛いよな・・・
i, ..:::::●:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::: !
_,,.i ..::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::●:: i'
/~ 'l, ..:::::::::::::::::::::::::::|、;;;;;;;;;;;;;;;;;/::::::::::::::::: ,i' /~\
/,.、-ー 、;i, .::::::::::::::::::::::::::::::| ~"''''"/::::::::::::::::::: /~\ / i.,_
/'/ ..::::::::|::' ., :::::::::::::::::::::::::::::::|'⌒`ヽ,/;:::::::::::::::::: /:::::::.. \ ,i .::.. \
/ i' .::::::::::/:::::::`・、., :::::::::::::::::::::::,人,__,/;;;;;::::::::::::::::/;;;;;;:;:::::.. ヘ / .::::....::::::::. `.,
,i/( .::::::::::::i,::::::::::::;;;;;;~;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::-''";;;;;;;;;;;;;;;:::::.. \ / .:::::::::::):::::::::.. ヘ
0268デフォルトの名無しさん
NGNG何やっているのかわかりやすくするためにマクロにしたんだが、駄目か・・・
>>265
空文字列でない(文字列の終わりでない)という条件式は俺も上の方法でやっています。for(;*str;str++);って感じで。
0269デフォルトの名無しさん
NGNG全て知ってます。
聞きたいことが伝わらないですかね?
たとえば、
int a=10;
int *p;
p=&a; /*アドレスを代入し、pがaを指す*/
ココ!
>>256のソースは変数を指していない。
printf("%d",*p);
ココ!指しているから*が使える。
>>256のソースではどこも指していないのに
*が使えるのはなぜですか?と聞いています。
0270デフォルトの名無しさん
NGNGい�`・・・
 ̄ ̄V ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
∧ ∧
( ,,)
./ |
(___/
/
0271デフォルトの名無しさん
NGNG配列を確保した時点でアドレスは決まると思うが・・・
0272デフォルトの名無しさん
NGNG> 全て知ってます。
> 聞きたいことが伝わらないですかね?
はあ?
配列がポインタに成り下がることを知っていたら
そんなアホな疑問は出てこないはずだが?
0273デフォルトの名無しさん
NGNGそれでいいじゃん。
マクロは、定数以外には基本的に使わないのが鉄則。
デバッガで追うのも面倒になるし。
0274デフォルトの名無しさん
NGNG0275256
NGNGだから、配列はポインタに変わっちゃうんだってば。
知ってるのにわからないんだったら才能ないんでない?
やめた方がいいと思うよ。
オレは0.2秒で理解した
0276デフォルトの名無しさん
NGNGわかりました・・・
今まで書いたソースを修正するのは面倒だからそれはそのままにして、今後は禁じ手にするか。。
0278デフォルトの名無しさん
NGNGマジレスシル!!正しこれが最後。
まずADSLでネット始めた方が安全だよ。それで電気店に行って対策ソフト
購入シル!店員に説明聞くか説明書読めば大概分かる。次ぎにセキュリティを
「高」にする。さらに心配なら「串」を刺すって方法もある。
サイトはトレンドマイクロを参考にした方がいいな。
メールはフリーで行い自分の活動的な事はネットカフェから作業するベシ!
他の奴の言う事は聞かなくてヨロシイ。
この書き込みに「自演」とか「お前は回線切って死ね」とか色々あると
思うけど素人はその程度なんで。
あっ、お前も分からなければ市ね!さっきは 書き込む所間違えてスマソ(W
0279デフォルトの名無しさん
NGNG> Cを使ってる人間であれば !*str という式が
そうだね。それくらい分かるよね(^_^;)
>>278
Σ( ̄□ ̄;)!!
0280デフォルトの名無しさん
NGNG明後日の方向にレスなさってますか?
0281デフォルトの名無しさん
NGNGワラタ
0282デフォルトの名無しさん
NGNG> 書き込む所間違えてスマソ
今も間違えてるし。
0283256
NGNG村上ショージ氏でつか?
このシュールさは彼としか思えない・・・
0284デフォルトの名無しさん
NGNGちょっとワロタ。けど
お前は回線切って氏ね!
0285デフォルトの名無しさん
NGNGパソオタ(デブ・メガネ)ということで
ファイナル・アンサー
0286デフォルトの名無しさん
NGNG0287256
NGNGオレは武田真治似で、彼女はhiro似で
大学で仕方なく学んで、楽しいなとか思ってる香具師ですが何か?
0288デフォルトの名無しさん
NGNGまあ、キミはデブでもなければヲタでもないけど、
プログラムもできない椰子だけどね。
0289デフォルトの名無しさん
NGNGここですか?
0290デフォルトの名無しさん
NGNG選ばれし者しか使えない。
容姿等を問題にする愚者には一笑分からない。
0291デフォルトの名無しさん
NGNGパソヲタ&デブ&メガネですが何か?
0292256
NGNG0293デフォルトの名無しさん
NGNG> 愚者には一笑
ワラタ
0294デフォルトの名無しさん
NGNG↓死ね
0295デフォルトの名無しさん
NGNGそれはさておき。
0296デフォルトの名無しさん
NGNG0297デフォルトの名無しさん
NGNG0298デフォルトの名無しさん
NGNG日 本 人 同 士 醜 い 争 い を し て い る の は コ コ で す か
0299デフォルトの名無しさん
NGNG┌──────────────────────―─┐
│ |
│ |
│ /■\ |
│ (´∀`∩) |
│ (つ 丿 |
│ ( ヽノ |
│ し(_) |
│ |
│ Now Onigiring. ... |
│ |
│ |
│ しばらくおにぎりでお待ちください。 |
│ |
└───────────────────────―┘
クールダウンの途中でエラーが発生した場合は、
「無視(I)」 を選択して続行してください。
0300デフォルトの名無しさん
NGNG0301デフォルトの名無しさん
NGNG0302デフォルトの名無しさん
NGNG299 コピペで使ってね。
0303デフォルトの名無しさん
NGNG↓ _人
∩ ∧_∧ ノ⌒ 丿
\ヽ_( ) _/ ::(
\_ ノ / :::::::\
∩_ _/ / ( :::::::;;;;;;;)
L_ `ー / / / \_―― ̄ ̄::::::::::\
ヽ | |__/ | ノ ̄ ::::::::::::::::::::::)
| ̄ ̄ ̄\ ノ お前は ( ::::::::::::::;;;;;;;;;;;;ノ
| | ̄「~| ̄( 、 A , )クソでも / ̄――――― ̄ ̄::::::::\
| | | | ∨ ̄∨ ( :::::::::::::::::::::::::::::::::)
し' し' \__::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;ノ
__
>>285 l ̄/. ___
↓ / /. / ___ノ
__/ /_/ /
喰っとけウラー! Y人, ' ',人⌒ヽ、, '
Y⌒ヽ)⌒ヽ、 人,ヽ)人'、, '
へ, --- 、 ノ ̄ ::::::::::::::::::::::)
/ ̄ ̄ ̄ 、____\ ( ::::::::::::::;;;;;;;;;;;;ノ
/ _/ ̄「~|\ __ \ / ̄――――― ̄ ̄::::::::\
| | | | ( 、 A , \ミソ ( :::::::::::::::::::::::::::::::::)
し' し' と∨ ̄∨ \__::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;ノ
0304デフォルトの名無しさん
NGNG2chラーが キ モ イ
↓お前、女いねーだろ・・・そして死ね
0305デフォルトの名無しさん
NGNG0306デフォルトの名無しさん
NGNGはっきりいって一般的にいうパソヲタ(デブメガネアニオタ)にはC言語できないと思われ。
(漏れの周りは死にそうにやせたヤシばっかりだ。。)
0307デフォルトの名無しさん
NGNGイッパイ ツレタ プッ
0308デフォルトの名無しさん
NGNG0309デフォルトの名無しさん
NGNG0310デフォルトの名無しさん
NGNG0311デフォルトの名無しさん
NGNG人のコードにゴチャゴチャ言ってくる奴は腐るほどいるが。
意外と真理かもしれん。
0312256
NGNG0313デフォルトの名無しさん
NGNGプロジェクトxに出てる技術者の爺さん達並みに
かっこいいと思うけど。
0314デフォルトの名無しさん
NGNG0315デフォルトの名無しさん
NGNG0316デフォルトの名無しさん
NGNG「キミ、JavaできるならCもできるよね?」
……それはない。
「キミ、CできるならJavaもできるよね?」
……それもない。
0317デフォルトの名無しさん
NGNG中学生が英語の勉強をしてるのを見た小学生が「英語できるんだ、すごい!」
と言ってるようなもの。
0318デフォルトの名無しさん
NGNG間違いなく理解してくれる対象(マシン&コンパイラ、クソなのは除く)があって、
業務ロジックを規格に沿って記述(コーディング)するだけだからねぇ。
キーボード打つのと同じで、慣れでしょ。
0319デフォルトの名無しさん
NGNG0320デフォルトの名無しさん
NGNG#include <stdlib.h>
#include <time.h>
#include <process.h>
#include <conio.h>
void saikoro(int*,int*);
void hangei(void);
int kakekin, motikin=1000,me1,me2;
void main(void)
{
int tyouhan,yosou;
printf("持ち金%d円です。\n",motikin);
while(1)
{
printf("丁か半か予想して、丁なら0、半なら1を入力してください.やめるときは2を入力してください.\n");
scanf("%d ",&yosou);
if(yosou==2)
{
exit(0);
}
printf("掛け金を決めてください.\n");
scanf("%d",&kakekin);
printf("掛け金は、%dです。",kakekin);
getch();
0321デフォルトの名無しさん
NGNGsaikoro(&me1,&me2);
int kekka=(me1+me2) %2;
if(kekka =0)
{
printf("丁です.");
tyouhan=0;
}
else
{
printf("半です.");
tyouhan=1;
}
if(yosou==tyouhan)
{
printf("予想的中です.掛け金分お金が増えます!");
motikin=kakekin+motikin;
}
else
{
printf("はずれです.掛け金没収!");
motikin=motikin-kakekin;
}
0322デフォルトの名無しさん
NGNGbreak;
}
return;
}
void saikoro(int *c,int *d)
{
srand((unsigned)time(NULL));//rand()だけではいつも同じになる
*c=rand()%6+1;
*d=rand()%6+1;
printf("%dと%dです。",*c,*d);
return;
}
で、掛け金を決めてくださいと言う前に、scanf("%d",&kakekin);が動作してしまうのですが、なぜですか?
0323デフォルトの名無しさん
NGNG勘違いじゃないのか?
0325デフォルトの名無しさん
NGNG0327326
NGNG0329デフォルトの名無しさん
NGNGこれからプログラムを学ぼうかと思っているのですが、
初めて学ぶ言語としてC言語はどうでしょうか?
一応、WindowsマシンとボーランドCの無料版はすでに入手してあります。
0330デフォルトの名無しさん
NGNGscanf() はもっと丁寧に扱え。
×: scanf("%d ",&yosou);
○: scanf("%d",&yosou);
0332デフォルトの名無しさん
NGNGC はそれなりに汎用性があり、大抵の処理が書けるので悪くは無い。
ただ、プログラムミスをした時に助けてれる機構がほとんど無いから
つまづく事があるかも知れない。
時間をかける覚悟があるなら習得は可能。
0333デフォルトの名無しさん
NGNGjavaの方が良いよ。
0334デフォルトの名無しさん
NGNGおお。直りました。ありがとうございます。一時間ぐらいここでずーッと悩んでました。
デモ、どうして、スペースがあっただけで、始めに実行されちゃうんですか?
0335デフォルトの名無しさん
NGNG数字列とスペース一個にひっかかるからだろ。
0337デフォルトの名無しさん
NGNGで。
0338330
NGNG"%d " というようにスペースを書くと、入力のホワイトスペースを要求する
ようになる。
つまり、最初の scanf() が終わってないだけで、次の scanf() が実行され
てる訳ではない。
0339デフォルトの名無しさん
NGNG>あと、kekkaってブロックの先頭でないところで宣言しているね。
なんかまずいですか?
0340デフォルトの名無しさん
NGNGCならまずい。最新の規格ではどうだかしらんが。
0341デフォルトの名無しさん
NGNG0342デフォルトの名無しさん
NGNGレスありがとうございます。
初めてというのもあり、とりあえず無料で始められる奴……となると、
JavaかCかC++(これはCの後かな?)ですよねぇ。
友達はC#だ〜とか言ってるのですが、これは無料じゃない……ですよね?
JDKというのもダウンロードしておいたのですが、
とりあえずCで行ってみようと思います。
0343デフォルトの名無しさん
NGNGま、とりあえずC++なんで、大丈夫だった見たいですね。
ところで、将棋プログラム作ろうと思ってるんですが、一番強いのが作れるプログラミング言語は何ですか?
0344デフォルトの名無しさん
NGNG> とりあえずC++なんで、
> 一番強いのが作れるプログラミング言語は何ですか?
ここで聞くな。
0345デフォルトの名無しさん
NGNG一番強いのが作れる言語は何かと問う時点でカス。
プログラミングの本質が分かっておらん。貴様は一生COBOLやってろ。
0346デフォルトの名無しさん
NGNGC#も無料よ。.NetFrameworkSDKをダウンすればいい。でかいけど。
0347デフォルトの名無しさん
NGNGファイルの拡張子が c じゃなくて cpp になってるだろ。
0348329
NGNGおお、そうなのですか。さっそく明日学校でダウンロードしてきます。
しかしボーランドC、入れたはいいけど全然動かし方分からないですね。
JDKはSDKという奴を落とすべきがEEという奴を落としたらしい?のでこれもダメっぽいし。
知り合いに詳しい友人がいるのですが、早くそいつみたいになりたいものです。
0349デフォルトの名無しさん
NGNG多分、一番低級なレベルで作れるのが一番早いから、アセンブラなんだろうけど、それだとむずかしいからといって、もう少し高級言語に
すると、遅くなって、弱くなる。だから、早いのを作るのと、簡単に作るのは、矛盾することなのだと理解しているのですが。
0350デフォルトの名無しさん
NGNG.NETのSDKってコマンドラインツールなんじゃないかなぁ?
Borlandのフリーコンパイラが使えないならそれも使えないかと・・・
0351デフォルトの名無しさん
NGNGお前ら。
0352デフォルトの名無しさん
NGNG将棋 AI の強さに、速さは関係無いだろ。
・・・と一瞬思ったが、指し時間まで考慮するなら確かに速い方がいいな。
0353デフォルトの名無しさん
NGNG早ければ、深く読めるのです。すなわち、強くなるのです。
0354デフォルトの名無しさん
NGNGhttp://pc3.2ch.net/test/read.cgi/tech/1004395614/l50
0355デフォルトの名無しさん
NGNGバグ取とかでひ〜ひ〜行って強いプログラムが作れないなら高級言語でもい〜のでは?
0356デフォルトの名無しさん
NGNGいくらアセンブラで枝葉部分をチューニングしてもアルゴリズムがダメダメ
だったら全く意味なし。それに、コンパイラの方がヘタなアセンブラより速い
コード吐くしな。
0357デフォルトの名無しさん
NGNG高級言語+ライブラリのサポートのもと、複数のCPUで分散処理させた
ほうがいいと思われ。
0358デフォルトの名無しさん
NGNG以前はヘルプが付いてないかったらしいけど
0359デフォルトの名無しさん
NGNGありがとう。こんなスレがまさかあるとは思っていませんでした。
将棋板で探したんですが、なかったんで、あきらめてしまいました。
>>355
>>356
ですね。PC性能UPで、アセンブリングも変わるんですか。じゃ、厳しそうですね。
0360329
NGNGお恥ずかしい限りです。
コマンドラインやエディタは大学でUnix使ってるので大丈夫なのですが、
どうもライブラリの場所?やインクルードの場所?をうまく指定できてないみたいです(?)。
明日知り合いに教えてもらって、がんばります。
0361デフォルトの名無しさん
NGNGそれは設定ファイルを作成していないからでしょう。
readmeをみた?
0362デフォルトの名無しさん
NGNGこれ使っとけ。
http://www.cmagazine.jp/setbcc.html
0363デフォルトの名無しさん
NGNG(*^o^*)
0364329
NGNG皆さんレスありがとうございます。
とりあえず原因は使っているエディタがEUCで保存していたため、
文字の出力がぐちゃぐちゃになっていたと判明しました。
(「これはテストです」などと表示しようとしていました)
"Hello World”なら正しく表示されました。しばし感動……。
これからも精進します。
0365デフォルトの名無しさん
NGNGリンクが失敗する原因とは考えられないのだが・・・いいのか?
0366デフォルトの名無しさん
NGNG多分インクルードやリンクが失敗したと思いこんだんだと思う。
(*^o^*)
0367329
NGNGえっと、まずEUCのまま動かしたところ、ぐちゃぐちゃなものが出力されました。
それをメールで知り合いに内容ごと送りましたら、この内容なら動くはず、
(学校からフロッピー7枚で必死に持ってきたので)ライブラリが壊れている(?)か
違うのを指してる(?)かも、みたいなことを言われまして、
必死にあがいていたのです……
0368デフォルトの名無しさん
NGNG動いた時点でライブラリやヘッダーのパスは間違っていない。
(*^o^*)
0369デフォルトの名無しさん
NGNGなんかおかしい、てな場合もあるはず
0370さ
NGNG#include <stdio.h>
#include "RPN.h"
binode tree_reduction(binode tree);
int main()
{
int b;
binode node;
binode tree = tree_example3();
b = tree_reduction(tree);
printf("Built a tree\n");
tree_reduction(tree);
printf("%d\n",b);
return 0;
}
binode tree_reduction(binode tree)
{
int a;
if(binode_is_operator(binode_lchild(tree)) == 0 && binode_is_operator(binode_rchild(tree)) == 0)
{
switch(binode_value(pos_pop()))
{
case OP_PLUS:
a=binode_get_int(binode_lchild(tree)) + binode_get_int(binode_rchild(tree));
case OP_MINUS:
a=binode_get_int(binode_lchild(tree)) - binode_get_int(binode_rchild(tree));
case OP_MULTI:
a=binode_get_int(binode_lchild(tree)) * binode_get_int(binode_rchild(tree));
}
value_push(a);
return 0;
}
0371さ
NGNG{
value_push(binode_rchild(tree));
tree_reduction(a,binode_lchild(tree));
}
else if(binode_is_operator(binode_lchild(tree)) == 0 && binode_is_operator(binode_rchild(tree)) == 1)
{
value_push(binode_rchild(tree));
tree_reduction(a,binode_rchild(tree));
}
else
{
tree_reduction(a,binode_lchild(tree));
tree_reduction(a,binode_rchild(tree));
}
}
このプログラムの文法的におかしいところおしえてください
0372デフォルトの名無しさん
NGNGrpn.hがないと指摘しようがないよ。
0373さ
NGNG0374デフォルトの名無しさん
NGNGMFCのCHttpを使用してサーバにファイルをアップロードしたいんですけど
データ自体は転送されるのですが
サーバ側のcgiでformをうまく解析できず
ファイルの転送が完了しません
ちなみにindex.htmlでformを書いてcgiを動かせば正常に作動します
以下のデータは全て直接(CString strData, CHttpFile *pFile)
pFile->WriteString( strData )で書き込んでいます
msize= 230653
-----------------------------
Content-Disposition: form-data; name="author"
who
-----------------------------
Content-Disposition: form-data; name="fname"; filename="C:\0.ppm"
Content-Type: text/plain
P6 320 240 255
:JF:JF8LG9MH<LH<LH@LE?KDBJGBJGFKEHMGKKJKKJHMGIN
HSFDQGCPFGPIGPIEQJFRKCUJEWLGSLGSLJSLLUNOULMSJL
...続く
0375デフォルトの名無しさん
NGNGポインターじゃなくて配列って言った方が良いじゃん!
0376デフォルトの名無しさん
NGNG見えないような形でCのソースコードに埋め込みたいのですが、どのよう
にするのが一般的な手法でしょうか?
0377デフォルトの名無しさん
NGNGchar *s = {'A'^0xAA, 'B'^0xAA, ...};
みたいにするとか。
0378376
NGNGなんで0xAAなのれすか?
0379名無しさん@XEmacs
NGNG0380デフォルトの名無しさん
NGNG0381デフォルトの名無しさん
NGNG0382名無しさん@XEmacs
NGNG0383デフォルトの名無しさん
NGNG> 前レスも全部読めばC言語の何割、極めたことになるんだ。
日本語の本を何冊読めば日本語の何割、極めたことになるんだ?
プログラムを「極めた」と思い込んだ瞬間にお前の成長は終わる。
プログラミングには頂点など存在しない、だがそれがいい。
0384デフォルトの名無しさん
NGNGCで満足しないことだな(稿
0385デフォルトの名無しさん
NGNG> 英数字10文字からなる文字列を、バイナリをダンプされても容易には
> 見えないような形でCのソースコードに埋め込みたいのですが、どのよう
> にするのが一般的な手法でしょうか?
cryptでgoogleしろ。2chのトリップはその方法で暗号化してる
0386l
NGNGLPDIRECT3D8ってのはIDirect3D8インターフェースへのポインタを指す
構造体なんだけど、たとえば
LPDIRECT3D8 a,b;
a=Direct3DCreate8(D3D_SDK_VERSION);
とした後、
b=a;
とするとbにはaの内容がコピーされるんじゃなく、aのアドレスが渡される
んですよね?
0388デフォルトの名無しさん
NGNGLPDIRECT3D8が構造体ならば、aの内容「だけ」がコピーされます。
LPDIRECT3D8のメンバにポインタが存在した場合には注意が必要です。
LPDIRECT3D8がポインタならばaのアドレスが代入されます。
0389386
NGNGLPDIRECT3D8はこのような構造体です。
typedef struct IDirect3D8 *LPDIRECT3D8, *PDIRECT3D8;
>LPDIRECT3D8がポインタならばaのアドレスが代入されます。
ということは386の内容であっているというわけですね。
ありがとうございました。
0390385
NGNGおそらくレジストキーか何かを暗号化して容易に推測させないことを
目的としてると思ったんだが。
プログラム中にcryptした結果を埋め込んでおき
レジストキーの入力結果をcryptして一致すればレジスト解除すれば
いいんじゃないかと思ったんだが、どういう目的で暗号化したいんだい?
0391デフォルトの名無しさん
NGNGdes アルゴリズム自体は可逆です。
0392376
NGNG可逆でないと困る、としか言えない。
>>391
DESなり3DESなりで暗号化したものを埋めると、>>377 ほどメンテナンス性が
よくない他、復号するための鍵をどう埋めるかという問題で循環して
しまうような。
厨房対策ってだけなので、>>377でいいですわ。ありがとう。
377がもっと可読性の高いマクロかなんかにできるなら嬉しい
んだけどむりっぽ。
0393デフォルトの名無しさん
NGNG純粋な C に関するもので無い限り、質問は受け付けるな。
MFC も DirectX も別スレがある。
それとも、問題の切り分けができない輩をはびこらせて、教えたがりクン気取って
楽しいのか?
それとも、「ここは 2 ちゃんねるだから」 スレの内容が整然としていなくても
どうでもいいか?
0394デフォルトの名無しさん
NGNG0395デフォルトの名無しさん
NGNGはて、>>374はさくっと無視されてるし、>>386はポインタの質問であって
そのポインタがたまたまDirectXで使われてるだけで、
回答も一般的なポインタの回答しかしていない。
君もそういうスレ違いの内容を誘導もせずに風紀委員を気取って楽しいのか?
0396デフォルトの名無しさん
NGNGじゃあ、話降ってくれよ。
0397デフォルトの名無しさん
NGNGCに関係ない。別スレへどうぞ。
0398デフォルトの名無しさん
NGNG0399デフォルトの名無しさん
NGNG俺は綺麗にこのスレへのリンクを貼って終わらせたかったのだが...
今 一 歩 及 ば な か っ た
0400デフォルトの名無しさん
NGNG,. -───-: 、
/::::::::::::::::::::::::::::::::\
/ '':::::::::::::::::::::::::::::::''''' ヽ
!::::::::::ィ::ハ:::;::::::::::::::::::::::::::!
i::|:::i::/l/ i;::ト、:、:::i:::::::::::::::i
|::i/レ'-i'' 'ヽi-ヾ,ヽ!:::::::::::::l
|::ハ -‐- -─- i::::::::::::::l
|::::::l| | | | |::::::::::::::!
|::::::ヽ | r---、! l,.!::::::::::::::l
l::::::::::::`;'-'=,‐,='r''i~!:::::::::::::::|
!:::::::l、::r'"´'. ' l ' i::::::::iヽ:::l
i:l、:::|./、_____,l::::;l:/‐'ヽ!
'!ヽ;i'>l____,.//-‐'''"ヽ
!/ |.VVVVVVVV.lV\!. i
| | | l
0401デフォルトの名無しさん
NGNGwkが上書きされて0バイトになって、死んでいるんだろうな。
0402デフォルトの名無しさん
NGNG0403デフォルトの名無しさん
NGNG0404デフォルトの名無しさん
NGNG25歳無職;
アニオタ;
デブ;
体臭;
};
童貞 >>393;
0405デフォルトの名無しさん
NGNG0406デフォルトの名無しさん
NGNG393 が痛いのは分かったからスレ汚すのはやめてくれ。
0407374
NGNGご迷惑をおかけしました
0408コンパイラ
NGNGどういう意味ですか?C++ではできるらしいのですが・・
0409デフォルトの名無しさん
NGNG例えば
void hoge(int *a)
aを変更すると引数で与えた変数にその変更が反映される点では参照渡しに非常に似ているが、
それはアドレスという参照用の情報を値渡ししているにすぎない。
0410デフォルトの名無しさん
NGNGC++だと、参照渡し(値で関数を呼ぶと、値のポインタが渡される)
を明示して関数プロトタイプを関数を宣言できる。↓
void func(int &value);
0411コンパイラ
NGNG0412デフォルトの名無しさん
NGNG機能的にはほぼ同一だからです。
まぁ、間違って覚えてるアフォも少なからずいるようですが。
0413コンパイラ
NGNG0414デフォルトの名無しさん
NGNGホストバイトオーダをネットワークバイトオーダに変えると
よく書いてあるのを見かけますが、
実際動かしてみると、
リトルエンディアンをビッグエンディアンに、
ビッグエンディアンをリトルエンディアンに変えてるような気がするのですが、
この認識は間違いですか??
0415デフォルトの名無しさん
NGNGネットワークバイトオーダとホストバイトオーダが同じならば
変えない。はず。
0416デフォルトの名無しさん
NGNGレスありがとうございます。
ネットワーク側とホスト側のバイトオーダが同じかどうかというのは
誰がいつどうやって調べてるのでしょうか?
0418デフォルトの名無しさん
NGNGまぁ、OS依存でしょう。
0419デフォルトの名無しさん
NGNGライブラリをビルドするときにでも調べるのでは。htonl呼び出し時に
チェックコード実行して判断してるのかも知れないけど。
いずれにせよ知る必要は無いし、それに依存したコードを書くべきで
もない。
0420デフォルトの名無しさん
NGNG> 誰が
コンパイラないしライブラリの製作者
> いつ
コンパイラないしライブラリを制作する時
> どうやって
2 バイト以上のデータがメモリにどう格納されるかを調べて
0421デフォルトの名無しさん
NGNG間違ってはいないが、よく考えろ。
ネットワークバイトオーダ<->ホストバイトオーダは
どちら向きにも同じ処理だろ?
ということではないのか?
0422デフォルトの名無しさん
NGNG例えばC FAQに載ってるのはこう
int x = 1;
if(*(char *)&x == 1)
printf("little-endian\n");
else printf("big-endian\n");
大抵はプログラムをコンパイルする前に調べておいて条件コンパイルする。
0423デフォルトの名無しさん
NGNG調べる必要などありません
ネットワークバイトオーダはリトルエンディアンであることがRFCで決まっています。
# どのRFCに書かれてるか忘れた
自分のアーキテクチャがリトルエンディアンの場合→何もしない
自分のアーキテクチャがビッグエンディアンの場合→変換
これだけです。
0424デフォルトの名無しさん
NGNG0425デフォルトの名無しさん
NGNG0426デフォルトの名無しさん
NGNG型def
0427デフォルトの名無しさん
NGNGdefも訳してやれやw
型てい
0428426
NGNGスマソ&&フォローサンクスコ
0429416
NGNG>ネットワークバイトオーダはリトルエンディアンであることがRFCで決まっています。
どこかのサイトでも見たよう気がします。
でもよく意味がよくわかりませんでした・・・。
バイトオーダってのはCPUで決まるんですよね?
通信先は無条件でリトルエンディアンだ!! って決められても、
その通信先のマシンのCPUがビッグエンディアンを採用してたら
ホストがリトルエンディアンだからといって
何も変換しないで通信しようとするとおかしくなりませんか??
0430デフォルトの名無しさん
NGNGネットワーク上では、必ずリトルエンディアンで送受信するって決まってるの。
通信先がビッグエンディアンだとしても、そっちの方でちゃんと受理してるから
おかしくならないの。
わかれ。
0431デフォルトの名無しさん
NGNGなぜに?向こうが変換すればいい話。
飛んでくるデータのエンディアンはあらかじめわかっているわけで。
0432デフォルトの名無しさん
NGNGその場合は通信先のマシンがntohl等を利用してビッグエンディアンに
変換する。
0433416
NGNG受け取り側も変換すれば解決するんですね。
なぜに気づかなかったのか・・・。
お騒がせ致しました。
0434デフォルトの名無しさん
NGNGネットワークに流す時はビッグエンディアンってことに決めとけば、
読む時はビッグエンディアンから自分のバイトオーダに変換すればいいだろ。
ちなみにネットワークバイトオーダーがリトルエンディアンっていうのはネタかDQN。
0435デフォルトの名無しさん
NGNG回答も煽りもスピードが命。
0436デフォルトの名無しさん
NGNG> ホストがリトルエンディアンだからといって
> 何も変換しないで通信しようとするとおかしくなりませんか??
おかしくなります。だからRFCで規定しています。
よって、ネットワーク上にビッグエンディアンの
データを流さないようにしなければなりません。
0437デフォルトの名無しさん
NGNGネットワークバイトオーダーに変換する関数が用意されているんだっけ?
0438437
NGNGしかもレス先間違えているし。。
0439デフォルトの名無しさん
NGNGも
typedef unsigned char UCHAR;
も同じ意味だよね? 使い分ける必要ってあるのかいな。
コンパイル時に意味がかわるのはわかるけど、、、使い分けなんて必要ないよね?
趣味のレベルだよね? これって。
0440デフォルトの名無しさん
NGNG> 使い分けなんて必要ないよね?
ある
UCHAR a, b, c;
と書いたときのことを考えろ。
0441デフォルトの名無しさん
NGNG0442デフォルトの名無しさん
NGNG何ら違いは見いだせないが。
言いたい事はわかるけど。
>>439
#define LPSTR char *
と
typedef char * LPSTR
で、
LPSTR a, b;
がどう解釈されるか考えてみよう。
0443439
NGNGどっちも同じじゃないの?
#defineの場合
char *a, b;
と置換されて
typedefの場合
char *a, b;
と判断される。
うー Webで調べても具体例みつからねぇ〜
0444デフォルトの名無しさん
NGNGおいおい
typedefの場合、
char *a,*b;
だろ・・・。
0445デフォルトの名無しさん
NGNG0446デフォルトの名無しさん
NGNG0447デフォルトの名無しさん
NGNG0448デフォルトの名無しさん
NGNGスレを消費すんなよ。
質問してる奴って、本買う金がもったいないからHP教えてくださいとか
質問してるような奴なんじゃねーの?
0449デフォルトの名無しさん
NGNG0450デフォルトの名無しさん
NGNG初心者には、ちょい、分かりにくいんでないの?
#defineとtypdefの違い。
0451デフォルトの名無しさん
NGNG俺も今まさに確認したところだ。
この本からと思われる話題多いね。
0452デフォルトの名無しさん
NGNG関数へのポインタの配列作ったら誰も理解できなかった。
・・・・・・こんな会社、もう辞めたい・・・・・・
0453デフォルトの名無しさん
NGNGどこもそんなレベルです。
0454デフォルトの名無しさん
NGNGスレ違い。つーか板違い。マ板逝って。
0455デフォルトの名無しさん
NGNGnamespace foo{
#define T1 char
typedef char T2;
}
namespace bar{
class T1; // NG
class T2; // OK
}
0456デフォルトの名無しさん
NGNG0457デフォルトの名無しさん
NGNGenumの使い方を知ってる人はごく少数です。
045822歳女
NGNG0459458
NGNG0460458
NGNG0461デフォルトの名無しさん
NGNG#define TEXT_SAGE "sage"
const char *TEXT_SAGE = "sage";
const char TEXT_SAGE[] = "sage";
0462デフォルトの名無しさん
NGNGわかりやすいか??
0463458
NGNG"文字列定数"
0464デフォルトの名無しさん
NGNGおっちょこちょいなところに惹かれました。あなたのことが好きです。
0465デフォルトの名無しさん
NGNGでも、そんなふうにプログラム中にいきなり定数を書くところは嫌いです。
0466デフォルトの名無しさん
NGNGこの人はなんでもかんでも文字列定数をマクロにするのかな・・・
0467デフォルトの名無しさん
NGNG0468デフォルトの名無しさん
NGNGそれは定数じゃなくてリテラル。
定数と呼ぶなら const を付けるのが正しい。
461 の 2 つめと 3 つめのどちらでもいいんじゃないか?
0469デフォルトの名無しさん
NGNG賛同。
0470デフォルトの名無しさん
NGNG0471デフォルトの名無しさん
NGNGセクション名やキー名をグローバルに#defineしてるんだけど・・・変? 俺、変態?
0472デフォルトの名無しさん
NGNG0473デフォルトの名無しさん
NGNG簡単だからって何でもかんでもdefineしてんじゃねーよ、ボケが。
よーし、パパuchar定義しちゃうぞとか言ってるの。もう見てらんない。
お前らな、glibcやるからdefine除けと。
でやっと除けたかと思ったら他のプログラマーがswapマクロとか書いてるんです。
そこでまたぶち切れですよ。
略)おまえdo{}while(0)しただけちゃうんかと。
エキスパートcプログラマの俺から言わせてもらえば今、プログラマの間での最新
流行はやっぱりinline修飾、これだね。
更にインラインアセンブラ。これ最強。
処理系依存と言う危険も伴う、両刃の剣。
まぁお前らド素人は、javaでも使ってなさいってこった。
0474デフォルトの名無しさん
NGNGま た C 99 か
0475デフォルトの名無しさん
NGNG0476デフォルトの名無しさん
NGNG即値と定数の区別もつかないのか?
0477デフォルトの名無しさん
NGNG素人の匂いがぷんぷんするぞ
0478デフォルトの名無しさん
NGNG最適化オプションによっては、同じ内容のリテラルでも別々の文字列として格納
されてしまう場合があるから気をつけろ!
0479デフォルトの名無しさん
NGNG0480デフォルトの名無しさん
NGNG定数=コンスタント
即値=リテラル
0481デフォルトの名無しさん
NGNG> 文字列定数とも呼ばれる文字列リテラルは、"..."のように2重引用符で囲まれた文字列である。
0482デフォルトの名無しさん
NGNGがーん、どう気をつければ・・・
0483デフォルトの名無しさん
NGNG0484483
NGNG文字列定数はどこも"〜〜"のことを指している
0485デフォルトの名無しさん
NGNG0486デフォルトの名無しさん
NGNGプ
0487デフォルトの名無しさん
NGNG0488デフォルトの名無しさん
NGNG0489デフォルトの名無しさん
NGNG0490デフォルトの名無しさん
NGNGReadOnlyだから定数と見ていいんじゃない?
constは定数のことだし
0491デフォルトの名無しさん
NGNG普通はそれでも困るほど膨れることはないから無視していい。
気になるなら、素直に const char * 使えばいい。
0492デフォルトの名無しさん
NGNG使う場所でいきなり書いちゃう?
0493デフォルトの名無しさん
NGNG一度しか使わないものをいちいちマクロにしたりはしない。
何度も使うならマクロにする。
0494デフォルトの名無しさん
NGNG0495デフォルトの名無しさん
NGNGそれだと定番の
const int MAX =10;
char ss[MAX];
トークに。
0496デフォルトの名無しさん
NGNGそうそう。
あとログファイルとか設定ファイルの場所とかも。
0497デフォルトの名無しさん
NGNGあー・・・
じゃあ準定数(←勝手に作った言葉)
0498デフォルトの名無しさん
NGNG0499デフォルトの名無しさん
NGNG0500即値の人
NGNG0501デフォルトの名無しさん
NGNG0502デフォルトの名無しさん
NGNG悪い気がするのですが、聞いてください。
えっと、if〜elseの使い方を覚えたので、少年マガジンにあった
GetBackersの「君が戦う相手は誰だ!」
というYES、NOでどんどん選んでいって
最終的になんらかの結果が出るというものを作ろうとしてるのですが
どうもうまくいきません。
ソースコードを出すんで、どこがおかしいかみていただけないでしょうか?
0503デフォルトの名無しさん
NGNGこういうやつってアホとしか思えん。
どうせ匿名なんだから、へたなごまかしなんかしないで、
そのまま逃げればいいのに。
0504デフォルトの名無しさん
NGNGint main(void)
{
char num,num2;
printf("START!\n");
printf("「YES」か「NO」で答えてください。\n「YES」の場合はY、NOの場合はNを押してください。\n");
printf("「GetBackers」は毎週欠かさず読んでる?\n");
num=getchar();
if(num=='N'||num=='n')
{
printf("GAMEOVER");
}
else if(num=='Y'||num=='y')
{
printf("今、付き合ってる人がいる?\n");
num2=getchar();
0505デフォルトの名無しさん
NGNGif(num2=='Y'||num2=='y')
{
printf("実験なので終了\n");
}
else if(num2=='N'||num2=='n')
{
printf("実験なので終了\n");
}
}
return 0;
}
のprintf("今、付き合ってる人がいる?\n");で処理が終わってしまい、
num2=getchar();が処理されないのですがどうしてでしょうか?
分かる方いたら教えてください。お願いします。
0506デフォルトの名無しさん
NGNGint main(void)
{
char num,num2;
printf("START!\n");
printf("「YES」か「NO」で答えてください。\n「YES」の場合はY、NOの場合はNを押してください。\n");
printf("「GetBackers」は毎週欠かさず読んでる?\n");
num=getchar();
if(num=='N'||num=='n')
{
printf("GAMEOVER");
}
else if(num=='Y'||num=='y')
{
printf("今、付き合ってる人がいる?\n");
num2=getchar();
}
return 0;
}
0507デフォルトの名無しさん
NGNG二回目のgetcharで改行を読んでいるとか?
0508デフォルトの名無しさん
NGNG0510デフォルトの名無しさん
NGNG#include <stdio.h>
int main(int argv , char **argc)
{
char *hello_world = "hello world!";
printf(%s\n , hello_world);
return 0;
}
0511デフォルトの名無しさん
NGNGとりあえず、なんか本買え。
0512デフォルトの名無しさん
NGNG>>507二回目?>>504と>>505のnum2=getchar();
は同じものです。
>>508荒らしではないですが、
板を見にくくしてしまって申し訳ありません。
もしかして私のことを他人からみたら厨ですか?
厨は大っ嫌いなのに・・・
0513デフォルトの名無しさん
NGNGなぜコピペするのかわからん。
>>510
"%s\n"
0514デフォルトの名無しさん
NGNGたとえばnを入力し、つづいてEnterキーを押す。
そうするとnはgetchar()で読まれるが、Enterキーを押すことで入力された改行文字はバッファに残る。
次にgetchar()が呼ばれるとその改行文字を読むから入力待ちにならない。
0515506
NGNG限りなく危険だが、これで動くことは動く。
>>511に同意でなんか本を買え
#include <stdio.h>
int main(int argv , char **argc)
{
char *hello_world = "hello world!";
printf("%s\n" , hello_world);
return 0;
}
0516デフォルトの名無しさん
NGNG0517デフォルトの名無しさん
NGNGなぜ危険なんだ?
0518デフォルトの名無しさん
NGNG何が危険なの?
0519518
NGNG0520512
NGNGscanfで数字入力にするようですか?
0521デフォルトの名無しさん
NGNGまさか仮引数名が一般とは逆になっているとかそういうことじゃないよね?
0523デフォルトの名無しさん
NGNG文字列定数は自動的にどこかに領域が取られるんじゃなかったのか?(^_^;)
0524デフォルトの名無しさん
NGNG良かったなここで恥かいといて。
0525デフォルトの名無しさん
NGNG君の知識のほうが危険な気がする
0527デフォルトの名無しさん
NGNG,. -───-: 、
/::::::::::::::::::::::::::::::::\
/ '':::::::::::::::::::::::::::::::''''' ヽ
!::::::::::ィ::ハ:::;::::::::::::::::::::::::::!
i::|:::i::/l/ i;::ト、:、:::i:::::::::::::::i
|::i/レ'-i'' 'ヽi-ヾ,ヽ!:::::::::::::l
|::ハ -‐- -─- i::::::::::::::l
|::::::l| | | | |::::::::::::::!
|::::::ヽ | r---、! l,.!::::::::::::::l
l::::::::::::`;'-'=,‐,='r''i~!:::::::::::::::|
!:::::::l、::r'"´'. ' l ' i::::::::iヽ:::l
i:l、:::|./、_____,l::::;l:/‐'ヽ!
'!ヽ;i'>l____,.//-‐'''"ヽ
!/ |.VVVVVVVV.lV\!. i
| | | l
0530510
NGNG勉強しなおしてください。引っかかる人がいるとは思いませんでした。
0531デフォルトの名無しさん
NGNGもしかして、
char *hello_world = "hello world!";
でメモリを明示的に確保する必要があると思ってる?
0532デフォルトの名無しさん
NGNG/~ ..:::::::!.,___ ,,..、-、,
/ .::::::::::::::`::::::~~""''''ー-,/~:::::::::.`i,
/ .:::::::::::::::::::::;;;;;;;;;;;;;;;;;;;::::::::::::::::::::::: i
/ .:::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::.. |
,/ :::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::. i
,l' ::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::::::::::::::::. |
l ::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::::: i おいおい、お前ら落ち着けよ・・・
i, ..:::::●:::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::::::::::: !
_,,.i ..::::::::::::::::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;:::::::::●:: i'
/~ 'l, ..:::::::::::::::::::::::::::|、;;;;;;;;;;;;;;;;;/::::::::::::::::: ,i' /~\
/,.、-ー 、;i, .::::::::::::::::::::::::::::::| ~"''''"/::::::::::::::::::: /~\ / i.,_
/'/ ..::::::::|::' ., :::::::::::::::::::::::::::::::|'⌒`ヽ,/;:::::::::::::::::: /:::::::.. \ ,i .::.. \
/ i' .::::::::::/:::::::`・、., :::::::::::::::::::::::,人,__,/;;;;;::::::::::::::::/;;;;;;:;:::::.. ヘ / .::::....::::::::. `.,
,i/( .::::::::::::i,::::::::::::;;;;;;~;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::-''";;;;;;;;;;;;;;;:::::.. \ / .:::::::::::):::::::::.. ヘ
0534デフォルトの名無しさん
NGNGもう一度C-FAQを読み直してきなさい。
0535デフォルトの名無しさん
NGNG文字列リテラルは名無しのstaticに確保されるが変更可能かどうかは不明。
0538523
NGNGchar *str="abcdef";
この文は、char型へのポインタstrを宣言して、それを文字列定数"abcdef"の先頭アドレスで初期化しているということは理解しているよね?
0539デフォルトの名無しさん
NGNG彡 ミ 彡 ミ, ヤ |
,,彡 ミ、、、、、、、、彡 ミ, (⌒) レ | まあ落ち着けや
彡;:;: ミ, ( ヽ ヤ
〜三;:;::::: 彡〜 ノ ノ レ
~~三:;:;:;::::: -=・=- -=・=- 三~~ ヽ ( : ;;
~~彡::;:;:;:;:::.. ___ ,三~~ ( ノ ,,,,, : ;;
~~彡;:;:;:;:;:;:;:. |┴┴| ,ミ~~ ノノ ;'" ,,ノ―、 ,;'
~~彡:;:;:;:;:;:;:;:;. ノ――| ---==ニノ ,;'′ >=ニ(二二二()
,...-''''""~~,::;:;::;::;::;::;' ミ,, ,;'′ ゝ--〈
__,;";;:;;;;;;;;;;;;;;;;;;;;;:;:;:;:;:;:;:; i! ミ,,,,;'′ `ー‐'
::::ミミミ:;:;:;: ミ:: ,;' ̄ ̄ ̄ ̄| \___/
:::::ミミミ:;:;: ミ:::, ,;::''′ |. \/
::::ミミミ:;:;:: ,;+''"~~゙+、~'''''~ | |
::::ミミミ:;:;:;: ,+'" ミ::::: | ━┷━━━┳━━━━━
:::::ミミミ:;:;:;:;: >':;: ミ:: | ┃
::::::ミミミ:;:;:;:;:;../;:;:;: ;:" | ┃
::::::::ミミミミ:;:/;:;:;:;: ,.+'"''-、________|__ ┃
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄;':;:;:;: ,.+'" ミ、 l ┃
0540デフォルトの名無しさん
NGNG発生しうるバグは
> 俺は確保されていないメモリに文字列を突っ込むのは怖いので。
で言い表されるのとは違うと思うのだが。
0541デフォルトの名無しさん
NGNGscanfでいいんじゃないの?
0542デフォルトの名無しさん
NGNGじゃあどう危険なのか教えて欲しい。
0544そくちのひと
NGNG「こいつら相当プログラムできるんだろうな」と思っていたが、
見てる内に大半はハターリで無能な奴ほど増長すると言う事が分かりました。
0545536
NGNG一応本職なので。
>>540
その回答には誤りがあった。認める。
俺が言いたかったのは明示的に変更を加えるような
ソースでない限り、変更が加えられるような恐れの
あるコーディングは危険だ、と言うことだ。
0546デフォルトの名無しさん
NGNG> 一応本職なので。
,. -───-: 、
/::::::::::::::::::::::::::::::::\
/ '':::::::::::::::::::::::::::::::''''' ヽ
!::::::::::ィ::ハ:::;::::::::::::::::::::::::::!
i::|:::i::/l/ i;::ト、:、:::i:::::::::::::::i
|::i/レ'-i'' 'ヽi-ヾ,ヽ!:::::::::::::l
|::ハ -‐- -─- i::::::::::::::l
|::::::l| | | | |::::::::::::::!
|::::::ヽ | r---、! l,.!::::::::::::::l
l::::::::::::`;'-'=,‐,='r''i~!:::::::::::::::|
!:::::::l、::r'"´'. ' l ' i::::::::iヽ:::l
i:l、:::|./、_____,l::::;l:/‐'ヽ!
'!ヽ;i'>l____,.//-‐'''"ヽ
!/ |.VVVVVVVV.lV\!. i
| | | l
0547デフォルトの名無しさん
NGNG本職とは思えないほどの知識の無さ。お願いだからC言語入門からやり直してください。
0548デフォルトの名無しさん
NGNG何言いたいか分からないよ。
> 明示的に変更を加えるような
何が何にどう変更を加えるの?
0549デフォルトの名無しさん
NGNG要するに
const char *hello_world = "hello world!!!!";
にしとけってことでは?
0550デフォルトの名無しさん
NGNG0551デフォルトの名無しさん
NGNGネタですか?
0552デフォルトの名無しさん
NGNG"Welcome Hell World"
にしときなさい。おまへら。
0553デフォルトの名無しさん
NGNG551 は文字列の内容を指摘してるんじゃないと思うけど。
0554デフォルトの名無しさん
NGNG0555デフォルトの名無しさん
NGNG0556デフォルトの名無しさん
NGNG0557536
NGNGこれはC++になるが、文字操作クラスのメソッドを作るときに
最終的には文字をポインタで操作するような事だ。
話がそれるが、俺はバグをなるだけ抑えるようなコードを書くために
慎重さを優先させてきたつもりだ。
>>547の言うようにそんなに知識は無いがなるだけエラーを起こさない様に
努力しているつもりだが何が悪い?
0558デフォルトの名無しさん
NGNGなら、始めっからそう書くと思うんだよなぁ。
const付けるだけで「限りなく危険」なことが回避できるのなら。
0559デフォルトの名無しさん
NGNGhttp://pc.2ch.net/test/read.cgi/prog/1035134087/l50
へ逝ってください。
0560デフォルトの名無しさん
NGNG知らなかった、じゃあ済まされないからね。
0561デフォルトの名無しさん
NGNG0562デフォルトの名無しさん
NGNGなぜここで(必要も無い)C++を持ち出す?
0564548
NGNGあなたは超能力者ですか?
悪いとは一言も言っていない、何を言っているのかわからないって言ったんだ
けど・・・。
しかも、相変わらず理解できないよ。
> これはC++になるが、文字操作クラスのメソッドを作るときに
> 最終的には文字をポインタで操作するような事だ。
いきなり C++ かい、というツッコミは置いといて、主語が無いよ。
何を述べているのか全然わからない。
こんなに日本語ダメダメで、本当に本職さんなの?
0565デフォルトの名無しさん
NGNGちょっと痛すぎだよ。
素直に謝りを認めればいいものを...
0566デフォルトの名無しさん
NGNGどっちなんだYO!
0567565
NGNG素直に誤りを認めとこう。
0568デフォルトの名無しさん
NGNGワラタ
0569デフォルトの名無しさん
NGNG唐突に関係の無い話を持ち出さない事。
0570536
NGNGどうしてそんなに頭がわるい?
文字列操作のクラスを自作してポインタを直接扱わなくてもいいようにしたんだ。
画期的だろ?
0571デフォルトの名無しさん
NGNGネタはもうちょっとひねって書き込みましょう。
0572デフォルトの名無しさん
NGNG画期的だが、さっきからの話題とどう関係あるんだ?
0573564
NGNG>>570
> どうしてそんなに頭がわるい?
と
> 文字列操作のクラスを自作してポインタを直接扱わなくてもいいようにしたんだ。
> 画期的だろ?
が全然繋がってないYO!!!
0574デフォルトの名無しさん
NGNG0575デフォルトの名無しさん
NGNGお前が理解しろ。
0576デフォルトの名無しさん
NGNG0577デフォルトの名無しさん
NGNGしかしネタが無いからちょっと変な事言う奴を見つけると総出で叩かれるな。
0578デフォルトの名無しさん
NGNG「文字列をポインタで持つのは、バグの元だからステ。
やっぱりC++でstringクラスでしょう」と570は、
このCスレで主張した、と、こいうことか?
0580デフォルトの名無しさん
NGNGなるほど。
でもさっきからの話題とのつながりがよくわからないYO・・・
0581580
NGNG0582557
NGNG>>563
そうだったな、悪い。あれは俺の間違いだ。
>>564
例えは悪いが、良くあるサンプルで
int型nとiがメモリ上で並んでいたとしてiが何かの拍子でオーバーフローした結果、
nにも(不本意にも)影響が出てしまう。
つまり、いちいちポインタ云々で文字列操作をするとバグが出る可能性がある
と言いたかった。(扱う場合にはエラーが出ないよう慎重にコーディングする)
0583386
NGNG0585386
NGNG勉強になるな、うん。
0586デフォルトの名無しさん
NGNG>>548が本物だとしたら、「C++出せば納得してもらえるだろう。どうせC++
わかんねーだろうし」ってとこじゃないか?
0587デフォルトの名無しさん
NGNGオーバーフロウってバッファオーバーフロウを指しているの?
じゃないとnに影響を与えることなんてないんじゃないか?
0588デフォルトの名無しさん
NGNGアフォですか?
const char const * p = "hello japan";
これ
const char * p = "hello japan";
とどう違うの?
0590デフォルトの名無しさん
NGNG0591デフォルトの名無しさん
NGNGとりあえず、名前は固定しといてくれ。
バグの元だ。
0592デフォルトの名無しさん
NGNG0593デフォルトの名無しさん
NGNG0594デフォルトの名無しさん
NGNG386 は全部ネタだから無視して (・∀・)イイ!! よ。
0595デフォルトの名無しさん
NGNGだよな(笑)
>>504が>>506ならただのミスだけど、そうでないのなら、>>504をコピペする意図がさっぱりわからん。
0596デフォルトの名無しさん
NGNG言ったのは386じゃねーだろ(ワラ
0597デフォルトの名無しさん
NGNG0598386
NGNGunsinged int n = 0xffffffff;
n++;
うあっ、強制終了させられた!!(window2000)
0600デフォルトの名無しさん
NGNGつまり、Hello, WorldでもC++のstringのようなものを実装してそれ使えと。
余計バグ増やしそうな気がするのは俺だけか?
0602デフォルトの名無しさん
NGNG> 限りなく危険だが、
は、Cの仕様を理解していなかったので 危険だという妄想を抱いた
ということでよろしいいか。
0603デフォルトの名無しさん
NGNGせめて(藁くらいつけろ。でないとお前がマジで言っているみたいだぞ。
0604デフォルトの名無しさん
NGNG0605デフォルトの名無しさん
NGNG0606デフォルトの名無しさん
NGNGえ?だって演算はCPU上で行うものだとばかり・・・
違うの?(ToT)
0607デフォルトの名無しさん
NGNG0608デフォルトの名無しさん
NGNG自信持て。508 が電波キタ─wwヘ√レvv~(゚∀゚)─wwヘ√レvv~─ !! なだけだ。
0609デフォルトの名無しさん
NGNG0610デフォルトの名無しさん
NGNG\ │ / \ │ /
/ ̄\ / ̄\
─( ゚ ∀ ゚ )─ ─( ゚ ∀ ゚ )─
\_/ \_/
/ │ \ / │ \
∩ ∧ ∧∩ .∩ ∧ ∧∩
∩ ∧ ∧ \( ゚∀゚) / ∩ ∧ ∧ \( ゚∀゚) /
( ゚∀゚ )/ | / . ( ゚∀゚ )/ | /
| 〈 | | | 〈 | |
/ /\_」 / /\」 / /\_」 / /\」
 ̄ / /  ̄ / /
0611デフォルトの名無しさん
NGNG0612デフォルトの名無しさん
NGNGメモリは計算器を持っていない。
だから一見メモリに対する演算でも、一旦 CPU にデータをフェッチして、演算後、
値を書き戻している。
この際、データ転送は変数の大きさ単位に行われる。
例えば符号無し 32bit 整数なら 32bit で。
計算結果が 33bit 目以降に起こっても 32bit で転送されるので、元のメモリの
別の変数領域が破壊される事は無い。
0614デフォルトの名無しさん
NGNGですよね。。。
常識のつもりでいたことが間違っているのかとおもって焦りました。。
0615デフォルトの名無しさん
NGNG名前の番号をころころ変えて周りを惑わしてる香具師。
0616デフォルトの名無しさん
NGNGあのさー、桁あふれとバッファオーバーフローを取り違えていない?
0617デフォルトの名無しさん
NGNGANSIの規定の許容範囲なのだろうか。
0618デフォルトの名無しさん
NGNG> それを応用するとウイルスが出来る。
本気で大丈夫ですか?
0619デフォルトの名無しさん
NGNG0620デフォルトの名無しさん
NGNG| | |_____ΦΦΦΦΦΦΦΦΦΦΦ||ΦΦΦ
| | | ̄ ̄ ̄ /| ||
| | | / /|TTTTTT TTTTTTTTTT||TTTTT
| /\ | /|/|/|^^^^^^ |三三| ^^^^^^^^^^^||^^^^^^^
| / / |// / /|
| / / |_|/|/|/|/|
| / / |文|/ // /
|/ /. _.| ̄|/|/|/ ∧_∧
/|\/ / / |/ / (___)
/| / / /ヽ /〔 祭 〕〕つ
| | ̄| | |ヽ/l `/二二ヽ
| | |/| |__|/ ∧_∧ / /(_)
| |/| |/ ( ´∀`) (_) ∧_∧
| | |/ // / ^ ̄]゚ (` )
| |/ ゚/ ̄ ̄_ヽ ⊂〔〔 祭 〕
| / /_ノ(_) ┌|___|
|/ (__) (_ノ ヽ ヽ
/ (_)
0621デフォルトの名無しさん
NGNGデータ転送の単位は変数ではなくてアーキテクチャに依存すると思うんだが。
0622デフォルトの名無しさん
NGNG適当に法螺吹いて悦に浸っている DQN 本職がいるスレはここですか?
0623デフォルトの名無しさん
NGNGそんな気がしないでもない。
>>617
「未定義」 だったような気がしないでもない。
0624デフォルトの名無しさん
NGNGというか、定義するまでもない。
0625デフォルトの名無しさん
NGNG/ ヽ ./ .∧ /#####ヽ
/ `、 / .∧ / ##### \
/  ̄ ̄ ̄ ヽ / ##### ヽ
l::::::::: .l / ##### ヽ
|:::::::::: -==・- -==・- | | ::::::::: :::::::|
.|::::::::::::::::: \___/ | | -・==- -・==- :::::::::|
ヽ::::::::::::::::::: \/ 丿 | \___/ :: :::::::|
ヽ::::::::::::::::: / ヽ \/ ::::::::::|
____>::::::::::::::::: <_ ヽ ::::;;;::::::::丿
/:::::::::::::::::::::::: ::::::::: /⌒ヽ⌒、⌒、⌒、 ::::::::: :<___
|::::::::::::;;;;;;;;;;;;;::::::::::::::: / /ヽノヽノヽノヽノ ::::::::::::: :::::::: :::ヽ
|:::::::::::::::::::::::: / /:::::::: ::::::::::::::::::::: ::::::::
「未定義」論争いこうか? いいねぇ〜
0626デフォルトの名無しさん
NGNG>>510もネタくさいし・・・・
0627デフォルトの名無しさん
NGNG同意・・・
0628デフォルトの名無しさん
NGNG多少なりともcをかじってる奴はprintfのformat部をあんな風にすると言う発想が
そもそも無いと思う。作為的なものは感じられない。
0629デフォルトの名無しさん
NGNG| | |_____
| | | ̄ ̄ ̄ /|
| | | / /|
| /\ | /|/|/|
| / / |// / /|
| / / |_|/|/|/|/|
| / / |文|/ // / ∧∧
|/ /. _.| ̄|/|/|/ /⌒ヽ)
/|\/ / / |/ / [ 祭 _] ∧∧
/| / / /ヽ 三____|∪ /⌒ヽ)
| | ̄| | |ヽ/l (/~ ∪ [ 祭 _]
| | |/| |__|/ 三三 三___|∪
| |/| |/ 三三 (/~∪
| | |/ 三三 三三
| |/ 三三
| / 三三
|/ 三三
0630デフォルトの名無しさん
NGNGフォーマット文字列をあんなにする奴がmainの引数を書くとはおもえん・・・しかも通常とは逆だし。
あと>>530
0631デフォルトの名無しさん
NGNG未定義で不定なんだよ
0632デフォルトの名無しさん
NGNG> 実際扱うのは関数ポインタなんだが。
新たなネタですか?
0633age
NGNG0634デフォルトの名無しさん
NGNG0635デフォルトの名無しさん
NGNG0636デフォルトの名無しさん
NGNG0637デフォルトの名無しさん
NGNG0638デフォルトの名無しさん
NGNG0639デフォルトの名無しさん
NGNG明日までの課題なんです。
「文字列配列を2つ渡すと、その2つの文字列を連結する関数を作成せよ。
ただし、関数は次の機能を持つ。
・2つの文字列配列はポインタで受け取る
・文字列配列の操作はポインタの増加で行う。str[i]という操作は使わない。
・結果は関数内で動的メモリ確保を行いそのポインタを返す。 」
神降臨キボンヌ。
0640デフォルトの名無しさん
NGNG宿題はスレ違いだバカ野郎。
0641デフォルトの名無しさん
NGNG0642デフォルトの名無しさん
NGNGプログラムに疲れたのでその問題を激しく解いてマターリしたいんだが、
宿題スレでは聞いてくれないのか?
0643デフォルトの名無しさん
NGNG0644デフォルトの名無しさん
NGNG{
char *renketsushitamojiretsu,*p;
renketsushitamojiretsu=p=(char *)malloc(strlen(mojiretsu1)+strlen(mojiretsu2)+1);
if(renketsushitamojiretsu){
for(;*mojiretsu1;mojiretsu1++,renketsushitamojiretsu++)
*renketsushitamojiretsu=*mojiretsu1;
for(;*mojiretsu2;mojiretsu2++,renketsushitamojiretsu++)
*renketsushitamojiretsu=*mojiretsu2;
*renketsushitamojiretsu='\0';
}
return p;
}
0645644
NGNG0646デフォルトの名無しさん
NGNGchar *p, *q;
q = malloc(strlen(s)+strlen(t)+1);
for (p=q;*p++ = *s++;);
for (p--; *p++ = *t++;);
return q;
}
0647639
NGNGなんとかできそうですけど、pの意味って何ですか?
0648デフォルトの名無しさん
NGNGお勧めの本を教えてください。入門者から脱初心者へ行ける本がいいです。
住所が田舎でコンピューター関連の本が売っていません。ネットショッピングで買おうと思っていますが、内容がわかりません。
僕にぴったりの本を教えてください。
0649デフォルトの名無しさん
NGNGchar *func(const char *str1, const char *str2)
{
size_t size1 = strlen(str1);
size_t size2 = strlen(str2) + 1;
char *p = malloc(size1 + size2);
if(p) {
if(size1) memcpy(p, str1, size1);
memcpy(p + size1, str2, size2);
}
return p;
}
0651デフォルトの名無しさん
NGNG0652649
NGNG#include <stdlib.h>
char *func(const char *str1, const char *str2)
{
const char *pp;
char *p;
size_t len;
for(pp = str1; *pp; ) pp++;
len = pp - str1;
for(pp = str2; *pp; ) pp++;
len += pp - str2;
pp = p = malloc(len + 1);
if(pp) {
while(*str1) *p++ = *str1++;
while(*str2) *p++ = *str2++;
*p = '\0';
}
return (char *)pp;
}
0653デフォルトの名無しさん
NGNG{
char *p = malloc(strlen(str1)+strlen(str2)+1);
*p = '\0';
strcat(p, str1);
strcat(p, str2);
return p;
}
0654デフォルトの名無しさん
NGNGmallocがNULLを返したらどうする?
0655デフォルトの名無しさん
NGNG{
char *p = malloc(strlen(str1)+strlen(str2)+1);
if (p){
*p = '\0';
strcat(p, str1);
strcat(p, str2);
}
return p;
}
0657639
NGNGぼくにとっては一大事だったのでたすかりました。
MY HEROたちに感謝します。
0658デフォルトの名無しさん
NGNG{
int i = strlen(str1);
char *p = malloc(i+strlen(str2)+1);
if (p){
strcpy(p, str1);
strcpy(p+i, str2);
}
return p;
}
0659649
NGNG{
char *p=malloc(strlen(str1)+strlen(str2)+1);
if(p)strcat(strcpy(p,str1),str2);
return p;
}
0660デフォルトの名無しさん
NGNG{
char *p=malloc(strlen(str1)+strlen(str2)+1);
if(p) sprintf(p, "%s%s", str1,str2);
return p;
}
0661デフォルトの名無しさん
NGNG{
char *p=malloc(strlen(str1)+strlen(str2)+1);
if(p) strcpy(p+sprintf(p,"%s",str1),str2);
return p;
}
0662デフォルトの名無しさん
NGNG0663デフォルトの名無しさん
NGNG0664649
NGNG俺的には俺の649。
0665デフォルトの名無しさん
NGNG0666649
NGNG0667デフォルトの名無しさん
NGNG0668649
NGNG俺的には俺の652と661。
0670デフォルトの名無しさん
NGNG0671649
NGNGあらかじめ長さがわかっている文字列をコピーするなら
strcpyよりmemcpyの方が有利。実装を考えてみるといい。
ただ、可読性ではstrcpyの方がすっきりするね。
0672デフォルトの名無しさん
NGNG大差ないだろ。
0673デフォルトの名無しさん
NGNGある程度の大きさづつコピーできるな。
0674デフォルトの名無しさん
NGNGそれがmemcpyじゃないか?
0676デフォルトの名無しさん
NGNGVC++6.0
なんだこの関数は?
0678デフォルトの名無しさん
NGNG大違い
0679677
NGNG0680デフォルトの名無しさん
NGNG{
unsigned char *destp=(unsigned char *)dest;
const unsigned char *srcp=(const unsigned char *)src;
for(;n--;destp++,srcp++)
*destp=*srcp;
return dest;
}
昔書いた奴。
環境に依存する形でかけばもっと効率がよくなるのかな・・・
0681デフォルトの名無しさん
NGNG0682デフォルトの名無しさん
NGNG0683デフォルトの名無しさん
NGNG長さ10000でもやったよ。結果は変わらないけど
0684デフォルトの名無しさん
NGNGどうやって速度をはかった?
0685684
NGNG0686デフォルトの名無しさん
NGNG(゚Д゚)ファア?
ループで繰り返したに決まってんじゃん
くだんねぇこと聞くなや。ハグェが
0687デフォルトの名無しさん
NGNGならなぜ素直にもっと巨大な配列を使わないんだ?
0688デフォルトの名無しさん
NGNG確認ですが、これはVineLinuxでemacsでC言語を勉強する人向けのもので入門から脱初心者までの本ですか?
Windows向けのものではありませんよね。
0689687
NGNG一桁ずつ増やし、1千万文字にしてやっと差が出たよ・・・・
確かにmemcpyの方が速かった。でも問題になるようなものじゃないと思う。
0690689
NGNG0691デフォルトの名無しさん
NGNG大きい配列だと確実に strcpy 不利だと思ったんだけど違うかな?
ちなみに 1,000,000でもやってみたけど strcpy の方が2倍近くかかる
0692デフォルトの名無しさん
NGNG(CPUの計算速度によるが)そこまで大きな配列を使うか、よほどループさせなければ問題になるほどじゃないだろ?
0693692
NGNG0694649
NGNG100文字で約5倍、1000文字で約11倍程度の速度差だった。
まあそれでもstrcpyを使うのは勝手だが、俺ならmemcpyだな。
0695デフォルトの名無しさん
NGNGstrcpy や memcpy みたいな関数はプログラム内で何万回も呼ばれたり
することだってあるわけだから十分問題だと思うんだけどなぁ...
0696デフォルトの名無しさん
NGNG0697649
NGNG毎回書くようなソースならともかく、
一度作っておけばOKな使い回しのきく関数であれば
memcpyで書いておいて損はないと思うが。
というか、strcpyにこだわってる奴は1人だけか?
0698デフォルトの名無しさん
NGNG0699デフォルトの名無しさん
NGNGこんなことしたら速くなったり......しないよね
そのまえにまともに動作しないかも
できるだけ long 型でコピーできる分は long でやるようにしてみたつもりなんだけど
void *memcpy( void *dest, const void *src, size_t n ) {
size_t x = n / sizeof(long), y = n % sizeof(long);
size_t i;
long *dl = dest; const long *sl = src;
char *dc; const char *sc;
for ( i = 0; i < x; i++ ) *dl++ = *sl++;
dc = (char *)dl; sc = (const char *)sl;
for ( i = 0; i < y; i++ ) *dc++ = *dl++;
return dc;
}
0700デフォルトの名無しさん
NGNGstrdupはstrcpyとおなじくらい長さは分かってないけど。
0701デフォルトの名無しさん
NGNGマテ。
strdup()の仕様をもいっぺん読み直した方がいい。
0702デフォルトの名無しさん
NGNGbus error.
0703デフォルトの名無しさん
NGNGmallocでコピーする領域を得る時に長さをはかるでしょ・・・・
0704699
NGNGfor ( i = 0; i < y; i++ ) *dc++ = *dl++; → for ( i = 0; i < y; i++ ) *dc++ = *sc++;
やっぱダメだ忘れてください......
0705703
NGNG0707デフォルトの名無しさん
NGNGmemcpyは関数外でコピーサイズを調べなきゃいけないから、結局変わらない。
0708デフォルトの名無しさん
NGNGそのままでは、ワードデータのアライメントを要求するCPU(680x0とか)では
ちょっとまずい。与えるアドレスが奇数だとaddress errorになる。
x86でも、エラーにはならないが遅くなったりする。
でも、基本的な考え方(できるだけ大きな単位でデータを移動)はいいのでは?
ライブラリのmemcpy()のソースも、アセンブラで書いてあったり、キャッシュ
を考慮して命令の配列に気を配ったりしているけど、基本的にはそんな感じ。
0709デフォルトの名無しさん
NGNGstrcpy()は'\0'が来るまでコピーという仕様だから、1バイトずつコピーする
以外に実装のしようがない。
memcpy()はあらかじめデータサイズが分かっているので、>>699のように
サイズが4の倍数だったらlong単位でコピーする、などの高速化が図れる。
0711独り言モード
NGNGpush、popを使ってメモリの転送したなー。
0712デフォルトの名無しさん
NGNG0713デフォルトの名無しさん
NGNGstrcpyでも'\0'が来るまでのサイズを調べてから4の倍数だったら
long単位でコピーすれば良い。
0714デフォルトの名無しさん
NGNG0715デフォルトの名無しさん
NGNGわざわざstrcpy内部であらかじめstrlenを取得するのか?
0716デフォルトの名無しさん
NGNG0717デフォルトの名無しさん
NGNGそこまでするなら素直にstrcpy内からmemcpy呼べ、と
0718デフォルトの名無しさん
NGNGそっちの方が速いならそう書けば良い。
strcpyってstrlen+memcpyという実装でもいいわけだろ。
0719デフォルトの名無しさん
NGNGstrlen による速度低下のほうが烈しくないか?
0720デフォルトの名無しさん
NGNGわざわざstrcpyを使おうとするの?
0721デフォルトの名無しさん
NGNGmemcpyでやる場合も関数外でやるだけであってstrlenが必要。
0722デフォルトの名無しさん
NGNGアフォですか?
0724デフォルトの名無しさん
NGNG0725デフォルトの名無しさん
NGNGstrcpyの方がわかりやすいから。
0726デフォルトの名無しさん
NGNG文字列のコピーはサイズがあらかじめわからないのでmemcpyだけじゃできませんよ。
0727デフォルトの名無しさん
NGNG必要だけど、それはmallocで使ったりするんじゃない?
0728デフォルトの名無しさん
NGNGどこらへんが?
>>726
日本語読めませんか?
0729デフォルトの名無しさん
NGNGstrcpyなら文字列を丸ごとコピーしているとすぐに分かるだろ。
0730デフォルトの名無しさん
NGNGそうだね。memcpyも4の倍数じゃなかったら数倍遅くなるね。
0731729
NGNG0732デフォルトの名無しさん
NGNGコメントつけるなりしてください。そんなところで可読性気にするより
0733649
NGNGの方が有利と書いたのは、長さがわかってる場合という前提だからな。
671で書いてるが。
0734デフォルトの名無しさん
NGNGVC++6.0のstrdupのソース見てみた。文字列の長さがコピー時には分かっているのにstrcpyを使っているね。
このソース糞だね。
0735デフォルトの名無しさん
NGNG糞です。いますぐ窓から投げ捨ててください(w
0736デフォルトの名無しさん
NGNGお前ほんとに短絡思考だな。ここまで来るとネタとしか思えん。
0737デフォルトの名無しさん
NGNG確かに文字列のコピーに使えないことはないけど。
0739デフォルトの名無しさん
NGNGchar * __cdecl _strdup (
const char * string
)
{
char *memory;
if (!string)
return(NULL);
if (memory = malloc(strlen(string) + 1))
return(strcpy(memory,string));
return(NULL);
}
0740デフォルトの名無しさん
NGNG本当に糞だな。
0741デフォルトの名無しさん
NGNGそれ書いたやつはきっと過労で疲れてたんだよ、きっと
0742649
NGNGstrdupがstrcpyを使ってるからstrcpyを使いましょうってか?
まさかこのケースでもstrcpyの方が速いとか思ってないよな。
0743デフォルトの名無しさん
NGNG0744デフォルトの名無しさん
NGNGglibcはmemcpyか。結構メジャーな方法なのか?
ところで、C++のソースとしてコンパイルするとエラーになるな(ワラ
char *
__strdup (const char *s)
{
size_t len = strlen (s) + 1;
void *new = malloc (len);
if (new == NULL)
return NULL;
return (char *) memcpy (new, s, len);
}
0745744
NGNG0746デフォルトの名無しさん
NGNG俺の記憶が正しければ、VC++のstrcpy()はワード境界からずれた
先頭と末尾以外はワード単位で転送してたように思う。
NUL文字の検出はなかなか思いつかなそうな方法使ってたよ。
0747デフォルトの名無しさん
NGNG0748デフォルトの名無しさん
NGNG昔はな。とか言ってみる。
0749デフォルトの名無しさん
NGNG0750デフォルトの名無しさん
NGNG0751デフォルトの名無しさん
NGNG関係ないけど、あなたの言葉はあまり良くないよ。
もう少し何とかならないのかね。
いくら匿名掲示板だからといって軽率すぎますよ。
0752デフォルトの名無しさん
NGNG0753デフォルトの名無しさん
NGNGなにか参考になるソフトウェアとかはないでしょうか?
0754デフォルトの名無しさん
NGNGIRCチャットサーバー参考にすればいい。
0755デフォルトの名無しさん
NGNGsocketについて調べて見な。
IRCはチャットの一言では片づけられないシステムだよ。
0756デフォルトの名無しさん
NGNG答えてください。
0757デフォルトの名無しさん
NGNG>確認ですが、これはVineLinuxでemacsでC言語を勉強する人向けのもので入門から脱初心者までの本ですか?
>Windows向けのものではありませんよね。
プラットホームは特定してません。
内容は基礎を一通り。
0758デフォルトの名無しさん
NGNGそれがわからないようなレベルであれば買っといて損は無い。
0759709
NGNGglibcのソースを見てみたら、同様に可能な限りワード単位で転送していた。
というわけで、>>709は撤回。
NUL文字の検出はすごいねえ。元のソースはアセンブラで書いてあったが、
Cに直してみるとこんな感じ。
/* unsigned longの4バイトのうち1バイトでも0x00があったらTRUE */
int isnul(unsigned long a)
{
unsigned long b = a + 0xfefefeff;
return (a <= b) || (((~a ^ b) & 0x01010100) != 0);
}
ぱっと見では何やってるのかさっぱり分からん。
0761デフォルトの名無しさん
NGNG0762デフォルトの名無しさん
NGNGその本はWinとかUnixとか、環境に関係なくCを解説してるよ。
エディタとかデバッガとかLinuxでの開発環境の勉強をしたかったら
別に本を買う必要があるよ。
0763デフォルトの名無しさん
NGNGVine-usersに帰れよひかる
0764デフォルトの名無しさん
NGNGWindows用のを買ってしまって大変後悔しているのです。emacsでC言語をやりたいと言えば、やはりお勧めは前述の本が妥当なのですね?
0765デフォルトの名無しさん
NGNGemacsのマニュアルならそこらに転がってるぞ
英語 :http://www.delorie.com/gnu/docs/emacs/emacs_toc.html
日本語:http://flex.ee.uec.ac.jp/texi/emacs-jp/emacs-jp_toc.html
0766デフォルトの名無しさん
NGNG0767デフォルトの名無しさん
NGNG太い回線と検索能力と何時間でもモニタを見ていられる視力があれば
大概の情報はweb上に存在するので本など買わなくてもいい。
# 嘘情報、古い情報も大量にあるけど
0768デフォルトの名無しさん
NGNGどうやって嘘情報を見破ればいいですか?
0769デフォルトの名無しさん
NGNGん?学校で習わなかったか?
三つ以上の情報を見て、正しそうなのを信じるのさ。
0770デフォルトの名無しさん
NGNGプログラムの経験がある程度あるなら、もっと
Linuxよりの解説書を薦めるけど、経験無しなら
その本とEmacsの解説書を買えばいいよ。
0771デフォルトの名無しさん
NGNGint a=5;(別になんでもいいけど)
*(int*)v=a;
っていうのは可能ですか?
wgetのソース見てたらこういうのがあったんですが
手元でやってみたら
segmentaionfaultです。
なんでかな
0772デフォルトの名無しさん
NGNG0773デフォルトの名無しさん
NGNG0774デフォルトの名無しさん
NGNG{
void a;
}
というのを書いてみたら
コンパイラに「voidで宣言されてます」
といわれてエラーになるんですが
コンパイラが壊れてるんですか?
0775デフォルトの名無しさん
NGNGネタはケッコウです。
sage
0776デフォルトの名無しさん
NGNGあの真剣に分からないのですが
軽めに説明してくれませんか?
0777デフォルトの名無しさん
NGNG0778デフォルトの名無しさん
NGNGvoid の意味をわかれ。調べれ。以上。
0779デフォルトの名無しさん
NGNG>void a;
この行にコメントを付けるとすればアナタはどんなことを書きますか?
0780デフォルトの名無しさん
NGNGとか?
ですか?
0781デフォルトの名無しさん
NGNGだろ
0782デフォルトの名無しさん
NGNG0783デフォルトの名無しさん
NGNG780 と 781 はものすごく正しいから、もうちょっと考えてから書いてくれ。
0784783
NGNG780 は間違ってるぞ。
0785デフォルトの名無しさん
NGNG何をするつもりで void a; と書いたわけ?
0787デフォルトの名無しさん
NGNG気持ちもわからんでもないが、妄想から書いたコードをコンパイルできなくて
「コンパイラが壊れてるんですか?」 とかほざいてたら放置したくもなるだろう。
0788デフォルトの名無しさん
NGNGだったら「コンパイラが壊れてる」なんてふざけたことを書かないで、
こういう動機でこのコードを書いて、こういう結果がでたので、こう考
察しましたとか、まじめに書けや、
0789デフォルトの名無しさん
NGNGvoid の意味を英和時点で牽いておけ。
0790789
NGNGアヒャーー
∧∧
(゚∀゚ )⌒ヽ ≡≡ = = -
,.、,,U‐U^(,,⊃_ /i ≡≡≡ = = -
;'゚∀゚ 、、:、.:、:, :,.: ::`゙:.:゙:`''':,'.´ -‐i = ≡≡≡ = = -
'、;: ...: ,:. :.、.:',.: .:: _;.;;..; :..‐'゙  ̄  ̄
`" ◎ ''`゙ ◎ ´´ - = ≡ = = -
0791デフォルトの名無しさん
NGNG>>759
じゃあstrcpyで問題ないじゃん。
0792デフォルトの名無しさん
NGNG786 で言っている事の何が void* なんだ?
0793デフォルトの名無しさん
NGNGemacsについてはこの本でいいでしょうか?やすいので。。。。。。。
0794デフォルトの名無しさん
NGNGstrcpyの\0判定はもっと手間がかかっているでしょ。
0795デフォルトの名無しさん
NGNG0796デフォルトの名無しさん
NGNGきちんと見ないでレスしてしまった(^_^;)
スマソ
0797デフォルトの名無しさん
NGNG問題をきちんと理解しとかなきゃ。
・前もって文字列の長さがわかってるとき
・そうじゃないとき
の二通りがあって、memcpy使ったほうがいいといってるのは
前者の場合だ。発端となった>>639の問題の場合、
mallocするために文字列の長さを得る必要があった。
その後コピーするわけだが、その場合文字列の長さがわかってる以上、
strcpyよりもmemcpyするほうが速いという議論だったのだ。
んで、おれの意見を書くと、速度についてはそうなることが期待できるから同意はする。
ただ速度が重要な部分以外ではそんなことやらない。strcpyを使う。
0798デフォルトの名無しさん
NGNGスレ違い。とりあえずC-h Tやっとけや。入門はこれで十分。
0799デフォルトの名無しさん
NGNGstrcpyは一文字ずつ、memcpyは通常ワード単位でコピーするから速いってことじゃなかったのか?
strcpyもワード単位ならstrcpyでいいじゃん。
0800デフォルトの名無しさん
NGNGまさか削除してしまったのか。。
0801デフォルトの名無しさん
NGNGint *p;
p=&n;
この場合,*ptは100(n)を指しますよね(100というかnのアドレスの中身ですよね?)。
&*ptの場合は,nのアドレスを指している事になるのでしょうか?
0802デフォルトの名無しさん
NGNG本当にそうか?
memcpyの整数をデクリメントしていって、0かどうかを比べるのと、
strcpyの>>759のような複雑な判定するのとどっちが速い?
もっとも、>>759についてはおれ、よーわからんわ。
本当にこれで判定できるのか。あとでじっくり考えてみよう。
0804799
NGNG場合によってはアクセスしてはならないところにアクセスすることにならない?
memcpyならコピーする大きさが決まっているからできるかぎりワード単位でコピーして、
残りは1バイトずつコピーするので問題ないけど。
0805デフォルトの名無しさん
NGNG0806802=797
NGNGうん。速度の差があったとしても問題になることはまずないだろう。
だから何やってるか一目わかるしパラメータが一つ少なくて済む
strcpyを普通は使うと思う。少なくともおれはそう。
0807804
NGNG調べる時は1バイトずつやるんだもんな(^_^;)
0808デフォルトの名無しさん
NGNGprintf("%p\n", &n);
printf("%p\n", &*pt);
とでもしてみたら。
0810デフォルトの名無しさん
NGNGpush esi
push edi
mov edi, DWORD PTR _s$[esp+4]
or ecx, -1
xor eax, eax
repne scasb
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, DWORD PTR _d$[esp+4]
shr ecx, 2
rep movsd
mov ecx, eax
and ecx, 3
rep movsb
pop edi
pop esi
0811デフォルトの名無しさん
NGNGmov ecx, DWORD PTR _n$[esp-4]
push esi
mov esi, DWORD PTR _s$[esp]
mov eax, ecx
push edi
mov edi, DWORD PTR _d$[esp+4]
shr ecx, 2
rep movsd
mov ecx, eax
and ecx, 3
rep movsb
pop edi
pop esi
0812デフォルトの名無しさん
NGNGちゃんと使えんでしょう。
で、大きさが分かってるとmemcpy使えるんですよ。
0813デフォルトの名無しさん
NGNGストリング命令が 3 つの strcpy() より 2 つの memcpy() の方が絶対速い。
805 は一体どんなテストをしたんだ?
0814デフォルトの名無しさん
NGNGだったら、長さがあらかじめ分かっている場合に限って、memcpy() 単体
の方がいいような。
0815デフォルトの名無しさん
NGNGしてアドレスが同じだったので,自分の考え方が正しかったか聞きたいのです
0816デフォルトの名無しさん
NGNGvoid mystrcpy(char *s, const char *t) {
memcpy(s, t, strlen(t)+1);
}
0818デフォルトの名無しさん
NGNG1 ワードずつ判定していくより、先に長さを測ってストリング命令
かました方が速いのか。
0819デフォルトの名無しさん
NGNGわかりやすく説明してもらえないでしょうか
0820デフォルトの名無しさん
NGNG何がわからないのか分からないんだが
0821デフォルトの名無しさん
NGNGスマソ
関数の説明で
void func(void *a)
とあった場合何を引数で渡していいかわからんのです。
0822デフォルトの名無しさん
NGNGポインタなら何でもいい。
全てのポインタはキャスト無しに void* へ暗黙変換できる。以上。
0823デフォルトの名無しさん
NGNGfunc(&i);
func(p);
func(q);
0824746
NGNG判定の条件が増えるわけだから当然多少は遅くなる。
実際のソースじゃ判定を関数なんかに分けてないよ。
そんなことしたら1バイトずつ調べた方が速くなる。
strdup()でstrcpy()を使うメリットはない。malloc()する前に文字列長を
調べてあるわけだから、終了判定が単純なmemcpy()の方が速いはず。
とはいっても、短めの文字列だったら数クロックの差くらいしかない。
malloc()にかかる時間の方がけた違いに大きいから、差はないも同然。
>>804
文字列の終端を調べる時にワード単位で読み込んでも問題ない。
数バイト多めに読み込んでも、その内容を書き換えるわけじゃない。
ワード境界に沿ったワード読み込みの場合はページ境界をまたがないから、
ワードの先頭バイトを読み込める状況ではAccess Violationも起こりえない。
0825デフォルトの名無しさん
NGNG産休。わかりやした
0826746
NGNGあれは関数としてリンクする場合のstrcpy()のコードだよ。
>>810のは最適化で組み込み関数を展開した場合のコード。
毎回展開するからサイズを大きくするわけにいかないのと、
関数呼び出しのコストがかからないから、それでも十分に速い。
0827デフォルトの名無しさん
NGNGそうなのか。
ところで VC6 の CRT の strcpr() のソースが見当たらないのだが
0828827
NGNG∧∧
/⌒ヽ)
i三 ∪
○三 |
(/~∪
三三
三三
三三
0829デフォルトの名無しさん
NGNG0830デフォルトの名無しさん
NGNG0831デフォルトの名無しさん
NGNG0832800
NGNGあ、あなたもないの?
じゃあやっぱり誤って削除したんじゃなくて元々なかったのか・・・
0833デフォルトの名無しさん
NGNG可変長配列
*/
#include <stdio.h>
int main(void)
{
char buf[256];
int size;
int *vc;
int i;
puts("■可変長配列■");
printf("作成する配列のサイズを入力してください:");
fgets(buf,256,stdin);
sscanf(buf,"%d",&size);
vc=malloc(sizeof(int)*size);
for(i=0;i<size;i++)
{
vc[i]=i;
printf("vc[%d] = %d\n",i,vc[i]);
}
return(0);
}
0834833
NGNG警告文は以下のようです。
test1.c: In function `main':
test1.c:19: warning: assignment makes pointer from integer without a cast
こんぱいらはGCCです。
0835デフォルトの名無しさん
NGNG0836デフォルトの名無しさん
NGNGstdlib.hをインクルードしろ
0837デフォルトの名無しさん
NGNGint malloc();
と解釈される。
0838デフォルトの名無しさん
NGNGcrt\src\intel\strcat.asm
をよくみろ。
0839( ○ ´ ー ` ○ )
NGNG内容は、char *s1,char *s2後方検索して
後方検索したものを、語尾にくっつけあうというものです。
どんな修正方法でもかまいません。
char *str_cat_chr(char *s1,char *s2,int c)
{
char *p1=NULL;
char *p2=NULL;
char *r1=s1;
char *r2=s2;
char *temp1=s1;
c=(char)c;
while(1){
if(*r1=='\0')
break;
if(*r1==c)
p1=r1;
r1++;
}
while(1){
if(*r2=='\0')
break;
if(*r2==toupper(c))
p2=r2;
r2++;
}
*p1='\0';
*p2='\0';
0840( ○ ´ ー ` ○ )
NGNGs1++;
while(p1&&p2){
if(!(*s1++=*s2++))
break;
}
*s1='\0';
return temp1;
}
0841デフォルトの名無しさん
NGNGサンクス。
しかし、strcat() とコピールーチンが共通だとは思わなかった。
strcpy() を使うと、strcat() も問答無用でリンクされるのか。
0842デフォルトの名無しさん
NGNGmain_loop: ; edx contains first dword of sorc string
mov [edi],edx ; store one more dword
add edi,4 ; kick dest pointer
main_loop_entrance:
mov edx,7efefeffh
mov eax,dword ptr [ecx] ; read 4 bytes
add edx,eax
xor eax,-1
xor eax,edx
mov edx,[ecx] ; it's in cache now
add ecx,4 ; kick dest pointer
test eax,81010100h
je short main_loop
0843デフォルトの名無しさん
NGNG丸投げは添削スレに逝ってくれ。
http://pc3.2ch.net/test/read.cgi/tech/1021881540/l50
0844デフォルトの名無しさん
NGNG語尾にくっつけあるというのはいったいどういうことを指すの?
0845( ○ ´ ー ` ○ )
NGNG宿題○投げとはいいません。
0846デフォルトの名無しさん
NGNG宿題であろうがなかろうが添削は添削だ。とっとと逝け。
0847デフォルトの名無しさん
NGNG843 は 「宿題」 とは一言も言っていない。丸投げは丸投げ。
0848( ○ ´ ー ` ○ )
NGNGの区別なしにs1、s2を後方検索により二つの文字のNULLの位置をわりだす。
お互いのNULLの位置を、認知してs1の語尾にくっつける。
なんでも、結構です。 これに、対する指摘をお願いします。
0849デフォルトの名無しさん
NGNGなんのこっちゃ。
0850( ○ ´ ー ` ○ )
NGNG0851デフォルトの名無しさん
NGNG0852( ○ ´ ー ` ○ )
NGNG0853デフォルトの名無しさん
NGNGs1、s2 が長さ 0だった場合に、*p1='\0'; *p2='\0'; がコケる。
つーか、スピードが問題で無いなら素直にライブラリ関数使い倒せ。
char *str_cat_chr(char *s1,char *s2,int c)
{
char *p1 = strchr(s1, c);
char *p2 = strchr(s2, c);
if(p1) *p1 = '\0';
if(p2) *p2 = '\0';
return strcat(s1, s2);
}
0854デフォルトの名無しさん
NGNGもしかして自覚無いの?
スレ違いの事書いたら普通は、つもりがあろうが無かろうが荒らしなんだけど。
0855デフォルトの名無しさん
NGNGN,U,L,L の連続4文字を探すんじゃないの?
0856デフォルトの名無しさん
NGNG0858デフォルトの名無しさん
NGNGそのソースを見た方が( ○ ´ ー ` ○ )の説明を見るよりもよくわかる・・・・(w
要はcの部分まで切りつめてくっつけるってことか。
0860デフォルトの名無しさん
NGNGw
0861858
NGNGchar *strcaserchr(const char *s,int c)
{
const char *endp=s;
for(s+=strlen(s);s>=endp;s--)
if(toupper(*s)==toupper((char)c))
return (char *)s;
return NULL;
}
0862デフォルトの名無しさん
NGNG{
char *p1=NULL;
char *p2=NULL;
char *r1=s1;
char *r2=s2;
c=(char)c;
for (;*r1; r1++)
if(*r1==tolower(c) || *r1==toupper(c))
p1=r1;
for (;*r2; r2++)
if(*r2==tolower(c) || *r2==toupper(c))
p2=r2;
if (p1) *p1='\0';
if (p2) *p2='\0';
return strcat(s1, s2);
}
0863デフォルトの名無しさん
NGNGif(toupper(*r1)==c)
0864デフォルトの名無しさん
NGNG{
char *p = NULL;
for(c = toupper(c); *s; s++)
if(toupper(*s) == c)
p = s;
retrun p;
}
strlen() が余計。
toupper() への引数を (char) にキャストする必要は無い。
0865デフォルトの名無しさん
NGNG0866デフォルトの名無しさん
NGNGchar *str_cat_chr(char *s1,const char *s2)
{
char *p1;
for (p1 = s1 + strlen(s1) - 1; *s2 != '\0'; p1++, s2++)
*p1 = toupper(*s2);
return s1;
}
0867デフォルトの名無しさん
NGNG{
char *p;
if (p=strcaserchr(s1,c)) *p='\0';
if (p=strcaserchr(s2,c)) *p='\0';
return strcat(s1, s2);
}
0868デフォルトの名無しさん
NGNG866 は仕様が読めないアフォ
0869デフォルトの名無しさん
NGNGあれ?strchr系ってcharにキャストしなければならないんじゃなかった?
0870デフォルトの名無しさん
NGNGtoupper() を通過しているから問題無い。
と思ったが、違かったようだ。すまん。
0871デフォルトの名無しさん
NGNG0872861
NGNG何人かが書いてきづいたいけど、
for(s+=strlen(s),c=toupper((char)c);s>=endp;s--)
if(toupper(*s)==c)
とやらないと無駄な処理をするね。
以前かいたstrrchrをほとんどそのまま流用したのが悪かった(^_^;)
0873デフォルトの名無しさん
NGNG0874デフォルトの名無しさん
NGNGchar *strcaserchr(char *s, int c)
{
char *p=strrchr(s, toupper(c));
char *q=strrchr(s, tolower(c));
retrun (p-q > 0) ? p : q;
}
0875デフォルトの名無しさん
NGNG何を言っているか分からない。
格納されている領域が同じなら、どうしようと言うわけ?
格納されている領域が違ければ、どうしようと言うわけ?
0876デフォルトの名無しさん
NGNGchar *strcaserchr(char *s, int c)
{
char *p = NULL, low=tolower(c);
for(c = toupper(c); *s; s++)
if(*s == c || *s == low)
p = s;
retrun p;
}
0877デフォルトの名無しさん
NGNG0878デフォルトの名無しさん
NGNG2 回も走査するのは遅くないか?
あと今気付いたが、名前、struncaserchr() のが良くないか?
0879デフォルトの名無しさん
NGNG0880デフォルトの名無しさん
NGNG(感覚的だが)近くに配置される、って事じゃあないかな。
0881デフォルトの名無しさん
NGNGいや、そんな事はわかってる。
事実、VC6 では同一 DATA セグメントに詰め込まれるし。
漏れの言いたいのは、スコープが違うというだけで充分区別つけられるのに、
どうして処理系依存の、格納される領域の事なんか訊ねるんだという事。
0882デフォルトの名無しさん
NGNGコンパイラに聞け
#include <stdio.h>
int gi;
static int mi;
static void hoge(int pi);
int main(void)
{
int li;
static int lmi;
hoge(li);
printf("%p %p %p %p\n", &gi, &mi, &li, &lmi);
return 0;
}
static void hoge(int pi)
{
static int lmi;
int li;
printf("%p %p %p\n", &pi, &li, &lmi);
}
0883882
NGNGMozillaのバグか?
0884デフォルトの名無しさん
NGNG0885初心者&rlo;者心始
NGNGコンパイルを実行した時の流れを大まかに書くと
プリプロセッサ #を展開
↓
コンパイラ objファイルを作る
↓
リンカ objファイル、標準ライブラリを利用してexeファイルを作る。
ですよね?
ということは、
モジュール化してないCファイルがobjファイルを
作らないのはかなり矛盾していませんか?
どういうことなんでしょうか?教えて下さい。
objファイルがないとリンカがexeファイルを作れないと思うんですが。
0886デフォルトの名無しさん
NGNGどういう意味?
0887デフォルトの名無しさん
NGNGなんか勘違いしてない?
0888デフォルトの名無しさん
NGNGクラス -> .obj -> .exe
みたいな。
Cはクラスノ概念がないからモジュール化なんて出来ないじゃないか!みたいな。
(まぁ、この時点で間違ってるんだが)
0889デフォルトの名無しさん
NGNG0890885&rlo;588
NGNG>モジュール化してないCファイルがobjファイルを作らない
つまり、リンクしていない単独のCファイルのことを言っていたのです。
0891デフォルトの名無しさん
NGNG0892デフォルトの名無しさん
NGNGすげー。
0893デフォルトの名無しさん
NGNG0894デフォルトの名無しさん
NGNG0895デフォルトの名無しさん
NGNG.c をコンパイルすれば必ず .o なり .obj なりができる。
単に、.obj ファイルを残さないオプションでコンパイルしてるんじゃないか?
(「.obj ファイルを残さない」 → 891 + 893)
0896デフォルトの名無しさん
NGNGC で GUI はできません。
プラットフォームに頼る事になるので、それにふさわしいスレで訊いてください。
0897デフォルトの名無しさん
NGNG0898デフォルトの名無しさん
NGNGこれからCに移ろうと考えております。
一応CやC++の文法や概念は一通り理解しているつもりですが、
Cのコンパイラがどこにあるのかわかりません。
DOSとコンパイラのみで練習したいのですが、フリーのものどこかにないでしょうか?
あとできれば教養程度にどんな企業が出しているかとか種類とかいろいろ詳しく教えてくれるとありがたいです。
0899デフォルトの名無しさん
NGNGmallocを使うときは
int *vc;
って宣言してるのに
reallocを使うソースだと
int *vc=NULLって宣言してるんだよね。
なんでヌルポインタで初期化する必要があるん?
0900デフォルトの名無しさん
NGNG-oは実行ファイルにつける名前を指定するだけだよね?
0901デフォルトの名無しさん
NGNGサンクス
0902デフォルトの名無しさん
NGNG0903デフォルトの名無しさん
NGNGやはり、LSI(試食版)ってデフォではリンクしていないCファイルは
objファイルを残さないんでしょうか?
↑例外として、リンクするとobjファイルができます。
0904デフォルトの名無しさん
NGNGreallocの仕様を調べてくださいです。
0905デフォルトの名無しさん
NGNGreallocの第一引数にNULLを与えるとmallocと同じ動作をするから。
ちなみに第二引数に0を与えるとfreeと同じ働きをする。
0906デフォルトの名無しさん
NGNGそろそろ次スレの準備をだれかああ
0907デフォルトの名無しさん
NGNGってやるんじゃなかった?
0908デフォルトの名無しさん
NGNGgccも残さないよ。
gcc test.cってやるとtest.cをコンパイル&リンクしてa.outが出来るだけ。
0909デフォルトの名無しさん
NGNGで十分です
0910デフォルトの名無しさん
NGNGサンクス。
あと拡張子のoutって何ですか?あとext
0911デフォルトの名無しさん
NGNGなるほど!最初だけmallocと同じで、
その後いったん領域あげたらreallocのはたらきするってか
0912908
NGNG最後に消すと思うけど
0913デフォルトの名無しさん
NGNG0914デフォルトの名無しさん
NGNG0915デフォルトの名無しさん
NGNGUNIXは拡張子なんて概念はないからね。a.outはgccがデフォルトでつける実行ファイルの名前。
-oで名前を指定しないとtestとか名前をつけてくれない。。。
0916デフォルトの名無しさん
NGNGで、printfするときに\nつけてたら意味なくない?
0917デフォルトの名無しさん
NGNG\nがついていても問題がないなら消さなければいい。
0918デフォルトの名無しさん
NGNG0919デフォルトの名無しさん
NGNGa.cとかとa.hがいるしょ?
どこに保存しといたらいいの?
0920デフォルトの名無しさん
NGNG0921デフォルトの名無しさん
NGNG多分、入力したあとに自分で消すという意味だと思う。
Perlのchompみたいな関数を使って。
0922デフォルトの名無しさん
NGNG0923デフォルトの名無しさん
NGNGさっきからネタばっか。やめれ
0924デフォルトの名無しさん
NGNGint dummy();
int main() { return dummy(); }
を通してみなさい。
0925デフォルトの名無しさん
NGNG0926デフォルトの名無しさん
NGNG0927デフォルトの名無しさん
NGNG0928デフォルトの名無しさん
NGNG/tmp/ccqpnZ6n.o(.text+0x7): undefined reference to `dummy'
collect2: ld returned 1 exit status
0929デフォルトの名無しさん
NGNGネタじゃないよ!マジだよ!
マジで何処に入れればいいかわかんないんだよ!
ほんとに教えて!
0930デフォルトの名無しさん
NGNG#include "a.h"
0931デフォルトの名無しさん
NGNGinvalid macro name
0932デフォルトの名無しさん
NGNGしまう可哀想な人間である事がわかりました。
0933デフォルトの名無しさん
NGNG0934デフォルトの名無しさん
NGNG#define dummy() dummy=0
0935デフォルトの名無しさん
NGNG#define main() dummy(){return 0;}int main()
0936デフォルトの名無しさん
NGNGああ、見落とした・・・
お前の言うとおりだよ!
でも言い訳させて!
最初に見たとこだったらさ、レスが10個くらいしか表示されないじゃん?
たぶんそこみて見逃したと思うよ
>>922
>>930
マジサンクス!!
0937デフォルトの名無しさん
NGNGmallocとかreallocとかの
allocってどういう意味?
辞書にものってない・・・
0938デフォルトの名無しさん
NGNGallocate
0939デフォルトの名無しさん
NGNG0940デフォルトの名無しさん
NGNG0941936
NGNGa.hはインクルードファイルにいれたけど
a.cもインクルードに入れるの?
0942デフォルトの名無しさん
NGNG0943デフォルトの名無しさん
NGNGネタマジウザイ
おもんない
氏ね
0944デフォルトの名無しさん
NGNG次スレテンプレート
====================================
C 言語ならオレに訊け。
C 言語じゃないなら訊くな。
問題をちゃんと切り分けて、C の話かそうでないか洗ってから質問してくれ。
つーか訊く前に Web で検索しろ。
コンパイラ探してるなら >>2 を見れ。
GUI とか、C 標準でできない事の質問は使ってる開発環境のスレに逝ってくれ。
ソース丸投は別スレがあるから他に逝ってくれ。
宿題は別スレがあるから他に逝ってくれ。
書籍については別スレがあるから他に逝ってくれ。
・前スレ <39>
http://pc3.2ch.net/test/read.cgi/tech/1036409391/
・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/
0945デフォルトの名無しさん
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
0946デフォルトの名無しさん
NGNG君の肛門からインクルードできるよ。
0947デフォルトの名無しさん
NGNGやってみる
0948936
NGNGわかんねーんだよー
たのむよー
0949デフォルトの名無しさん
NGNGhoge/a.c
a.cに
#include "a.h"
0950デフォルトの名無しさん
NGNGコンパイラが使える場所なら、.c ファイルはどこでもいい。以上。
0951デフォルトの名無しさん
NGNGああ、見落とした・・・
お前の言うとおりだよ!
でも言い訳させて!
最初に見たとこだったらさ、レスが10個くらいしか表示されないじゃん?
たぶんそこみて見逃したと思うよ
>>922
>>930
マジサンクス!!
に対して何を答えろと?
>最初に見たとこだったらさ、レスが10個くらいしか表示されないじゃん?
2chビューア使え。
が精一杯だが。
0952936
NGNGコンパイラが使える場所ってよくわからんけど
一応includeに入れておくよ!
っていうかヘッダの数半端じゃないね!!
いったいいつ使うんだろう・・・
0953デフォルトの名無しさん
NGNG#include <a.h>
いれんほうがいいと思うが。
0954947
NGNG0955936
NGNGなんで?呼び出すときは#include <a.h>でしょ?
ヘッダファイルはIncludeに入れるよね?
で、ソースファイルはどこに・・・?
0956デフォルトの名無しさん
NGNG自分でつくったものをincludeディレクトリに入れるのはまずいんじゃないか?
特につくったものをソースごと配布するときなんかは。
0957デフォルトの名無しさん
NGNGhttp://pc3.2ch.net/test/read.cgi/tech/1036673739/l50
0958デフォルトの名無しさん
NGNG0959デフォルトの名無しさん
NGNG∧_∧ γ
(::::::::::: ) 次スレが立てられないなんて・・・ ......................................
.(○::::::: ) .::::::::;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::........
~"''"""゛"゛""''・、 ...:::::;;;'' ';;;:::::.......
"”゛""''""“”゛゛""''' "j' ...::::;;;'' '';;;::::::.........
:::::ヘ :::::....ヽ :::;;;ノ ::( ....::::::;; '';;;::::::::::.......
:: ゝ :::::......ノ:;;../ ~~^^ ~~~~~^^^~ ~~^^ ~~^^ ~~~~~^^^~ ~~^^~~~^
0960936
NGNGじゃあどこに入れればいいんですか?
例えばa.hを読み出すソースを保存してるふぉるだと
同じとこ?
0961デフォルトの名無しさん
NGNGだから、呼び出すソースファイルと同じところだってば(笑)
a.cから呼び出すならa.cと同じディレクトリ(フォルダ)
0962デフォルトの名無しさん
NGNG0963936
NGNGわかりました!ありです!
ソースファイルもヘッダファイルも一緒でつよね?
0964デフォルトの名無しさん
NGNG今までの煽りをリセットして聞いてくれ。
自分の、作業用のディレクトリを作って、そこに a.c と a.h を置け。
a.c からの a.h の呼び出しは、#include <a.h> ではなく
#include "a.h" にしろ。
あとは a.c をコンパイラにかければ OK だ。
0965936
NGNG#include <>だと、Icludeフォルダからって事で
#include " "だと、同じフォルダって事すか?
0966デフォルトの名無しさん
NGNGやっと理解したか。
そういうこと。
stdio.hなんかはincludeディレクトリに入っているから<>でやるの。
0967デフォルトの名無しさん
NGNG0968デフォルトの名無しさん
NGNGヘッダー(#include)ファイルを探すのに、どこを探しにいくのか。
http://www.catnet.ne.jp/kouno/c_faq/c10.html#8
0969936
NGNGこの知識を明日ひけらかすYO!
「なあなあ、お前ら知ってる?
#includeの<>はさあ、(以下略
0970デフォルトの名無しさん
NGNG0971デフォルトの名無しさん
NGNGここはおまえの住むところじゃないの。
0972デフォルトの名無しさん
NGNG\∧_ヘ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
,,、,、,,, / \〇ノゝ∩ < 1000取り合戦、いくぞゴルァ!! ,,、,、,,,
/三√ ゚Д゚) / \____________ ,,、,、,,,
/三/| ゚U゚|\ ,,、,、,,, ,,、,、,,,
,,、,、,,, U (:::::::::::) ,,、,、,,, \オーーーーーーーッ!!/
//三/|三|\ ∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
∪ ∪ ( ) ( ) ( ) )
,,、,、,,, ,,、,、,,, ∧_∧∧_∧∧_∧ ∧_∧∧_∧∧_∧∧_∧
,,、,、,,, ( ) ( ) ( ) ( )
http://big.freett.com/scheme_a/num1000.swf
0973デフォルトの名無しさん
NGNG0974デフォルトの名無しさん
NGNG0975デフォルトの名無しさん
NGNGstrdup の dup てなに?
strchr の chr てなに?
strpbrk の pbrk てなに?
0976デフォルトの名無しさん
NGNG0977デフォルトの名無しさん
NGNG0978デフォルトの名無しさん
NGNG書いてねーよ。バーカバーカ。
分かんねぇんならすっこんでろ!
0979デフォルトの名無しさん
NGNGduplication(スペリングが違うかも)
character
???
0980936
NGNGcatはUnixのコードと思われ(勘
0981デフォルトの名無しさん
NGNG自作自演カコワルイ
0982小人
NGNG0983小人
NGNG0984小人
NGNG0985デフォルトの名無しさん
NGNG0986デフォルトの名無しさん
NGNG0987小人
NGNG0988936
NGNG0990デフォルトの名無しさん
NGNG先日、友人二人と僕の三人でドライブへ行ったのさ。
その日はとてもいい天気でね。
それで
0991デフォルトの名無しさん
NGNG漏れはなんとなくプログラムという言葉に憧れて
何も知らずにこの世界に入った。
0992小人
NGNG ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ (´´
∧∧ (´⌒(´
⊂(゚Д゚ )≡≡≡(´⌒;;;≡≡≡
⊆⊂´ ̄ ⊂ソ (´⌒(´⌒;;
 ̄ ̄ ̄ ズザーーーーーッ
0993デフォルトの名無しさん
NGNG0994デフォルトの名無しさん
NGNG ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ (´´
∧∧ (´⌒(´
⊂(゚Д゚ )≡≡≡(´⌒;;;≡≡≡
⊆⊂´ ̄ ⊂ソ (´⌒(´⌒;;
 ̄ ̄ ̄ ズザーーーーーッ
0995デフォルトの名無しさん
NGNG( ⌒ ヽ トゥトゥトゥマシェーリー
∪ 。ノ トゥトゥトゥマシェーリー
∪∪
0996デフォルトの名無しさん
NGNG海にでも行こうかってことになって友人の一人が運転して僕は助手席、もう一人の友人は
後ろの席に乗っていくことになったんだ。
すると途中で
0997デフォルトの名無しさん
NGNG0998デフォルトの名無しさん
NGNG/⌒ヽ)
i三 ∪
○三 |
(/~∪
三三
三三
三三
0999デフォルトの名無しさん
NGNG1000デフォルトの名無しさん
NGNG10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。