- 1 名前:デフォルトの名無しさん mailto:sage [2008/01/16(水) 15:14:51 ]
- エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。 ※sage禁止です(と代々スレに書いてありますが自己判断で)。 【前スレ】 【初心者歓迎】C/C++室 Ver.46【環境依存OK】 pc11.2ch.net/test/read.cgi/tech/1198755167/ 【アップローダー】(質問が長い時はココ使うと便利) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
- 289 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 15:50:57 ]
- 確かにあんまり行儀のいいプログラムじゃないなぁ。
私ならこう書く。 #include<stdio.h> int main(void) { double a[]={-256.0,-128.0,-8.0,-2.0,-1.3,-1.0,-0.5,0.0,1.0,1.3,2.0,8.0,128.0,256.0}; for (unsigned i = 0; i < sizeof(a) / sizeof(* a); ++i) { printf("%g\n", a[i]); } return 0; } ポインタを使うならこうなるかな。 for (double * p = a; p - a < sizeof(a) / sizeof(* a); ++p) { printf("%g\n", * p); } return 0; } いずれにしろ、定数を生のまま書くのはやめた方がいい。
- 290 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 15:51:24 ]
- >>286
>printf("%f\t%p\n",a[i],p)とかなら・・・ それを言うなら、printf("%f\t%p\n",a[i],&a[i]); だろ? 最後のpがokなら、*pもokだろうに。
- 291 名前:デフォルトの名無しさん mailto:sage [2008/01/21(月) 15:51:39 ]
- >>288
p=a; //pがaの先頭(-256)を指す printf("%f\n", *p); //pが現在指してる値(-256)を表示する p++; //pが次の要素(0)を指す printf("%f\n", *p); //pが現在指してる値(0)を表示する p++; //pが次の要素(-128)を指す printf("%f\n", *p); //pが現在指してる値(-128)を表示する 以下繰り返し iを使ってるのは、単に繰り返し回数を数えるため
|

|