スレを勃てるまでもないC/C++の質問はここで 4
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
2008/09/17(水) 15:41:48過去ログ
スレを勃てるまでもないC/C++の質問はここで
http://pc11.2ch.net/test/read.cgi/tech/1167476845/
スレを勃てるまでもないC/C++の質問はここで 2
http://pc11.2ch.net/test/read.cgi/tech/1178503366/
スレを勃てるまでもないC/C++の質問はここで 3
http://pc11.2ch.net/test/read.cgi/tech/1187521676/
0892デフォルトの名無しさん
2008/12/25(木) 23:00:110893デフォルトの名無しさん
2008/12/25(木) 23:03:400894デフォルトの名無しさん
2008/12/25(木) 23:05:29指摘してたけど、それ省略できるよって揚げ足取られて、暴れだす人とかは
何度もみてる。
0895デフォルトの名無しさん
2008/12/25(木) 23:06:40警告出すコンパイラはあるけど。
0896デフォルトの名無しさん
2008/12/25(木) 23:11:07VC6 とか対応してないし、古いコンパイラ対策として書いた方がいい場合もある。
>>895
確かに省略はできるなw
何が帰るかは分からないが。
0897デフォルトの名無しさん
2008/12/25(木) 23:19:11省略できるって言うけど、どういう状況でそう言えるのか、言わないあんたもどうかと。
値を返す必要の無い関数なら必要ないが、値を返す場合、何かしら return 値 を書かないと
コンパイラが警告を出すし、関数が返す型を指定しておいて値を返さないのはおかしいし。
あと、mainに関しては、ANSI、ISO準拠ではプログラムの開始が main とし、
int型の値を返すスタイルを推奨しているから、int main(void) return 0; が標準”スタイル”
とされているが。その辺も、それを使うか使わないかは人それぞれだが、
筋を通すなら必要なコードは書くべき。
0898デフォルトの名無しさん
2008/12/25(木) 23:20:25まあ、それみたいに掲示板とかに貼る書き捨ての数行のとかのコードとかは
return を省略したりするんだけど、それにいちいち >>891 みたいに
ツッコミ入れてくる奴がいるんだよ。
>>891 はちがうけど、ムダにあおり気味に。
で、それにreturn 書かなくてもいいだろって、揚げ足をとってやると、
「書くべきだ」とか、暴れだすってのがいつもの流れっていうか。
それは宗教論争じゃないだろって。
0899デフォルトの名無しさん
2008/12/25(木) 23:24:59ちょっと文章から読めないんで違ったら悪いんだが、
ここで 「省略できる」って言ってるのは、一般の関数とか
たまたま省略しても問題ない、というケースの話じゃなくて、
プログラムが正常終了する場合は main の return は省略
してもよいって規格で正式に定められてるっていう意味だよ?
0900デフォルトの名無しさん
2008/12/25(木) 23:39:31規格は所詮規格。まともに実装されてないこともあるわけで。
0901デフォルトの名無しさん
2008/12/25(木) 23:44:280902デフォルトの名無しさん
2008/12/25(木) 23:48:17詳細はわすれたけど。
0903デフォルトの名無しさん
2008/12/26(金) 14:33:29#include <stdio.h>
int main (void)
{
int mange;
printf("男性なら0、女性なら1を入力してね: ");
scanf("%d",&mange);
switch (mange) {
case 0:
printf("まんこ大好き!!\n");
for (;;){
printf("%d←マンコ好き度\n",mange);
mange++;
}
break;
case 1:
printf("ちんこ大好き!\n");
for (;;){
printf("%d←ちんこ大好き度\n",mange);
mange++;
}
break;
default:
printf("きもい\n");
break;
}
return 0;
}
0904デフォルトの名無しさん
2008/12/26(金) 14:43:51printf("%10d←マンコ好き度\r",mange);
0905デフォルトの名無しさん
2008/12/26(金) 14:50:580906デフォルトの名無しさん
2008/12/26(金) 15:11:45szPathのszはどういう意味?
0907デフォルトの名無しさん
2008/12/26(金) 15:28:260908デフォルトの名無しさん
2008/12/26(金) 17:23:52子供すぐる
0909デフォルトの名無しさん
2008/12/26(金) 17:24:04* cApples : count of items
* dwLightYears : double word (systems)
* fBusy : boolean (flag)
* nSize : integer (systems) or count (application)
* iSize : integer (systems) or index (application)
* fpPrice: floating-point
* dbPi : double (systems)
* pFoo : pointer
* rgStudents : array, or range
* szLastName : zero-terminated string
* u32Identifier : unsigned 32-bit integer (systems)
* stTime : clock time structure
* fnFunction : function name
* pszOwner : pointer to zero-terminated string
* rgfpBalances : array of floating-point values
* hwndFoo : handle to a window
* lpszBar : long pointer to a zero-terminated string
* g_nWheels : member of a global namespace, integer
* m_nWheels : member of a structure/class, integer
* m_wheels : member of a structure/class
* s_wheels : static member of a class
* _wheels : local variable
0910デフォルトの名無しさん
2008/12/26(金) 17:45:220911デフォルトの名無しさん
2008/12/26(金) 20:31:37プロトタイプガンダムとかも・・うまくいかない・・
0912デフォルトの名無しさん
2008/12/26(金) 20:59:20「うまくいかない」だけでは何がどう上手くいかないのか判らないよ。
・上手くいかないコード
・どう上手くいかないのか
(本来こうなって欲しいのにこうなってしまう、という内容
エラーメッセージがあるならそれを貼る)
0913デフォルトの名無しさん
2008/12/26(金) 21:14:22すいません(´・ω・)
#include <stadio.h>
int main(void)
{
return 0;
}
int sum(void)
{
printf("FOOOO");
return 0;
}
コンパイルしても
c:\documents and settings\yuji\my documents\visual studio 2008\projects\自由だああああ\自由だああああ\自由だあああああああああ.cpp(1) : fatal error C1083: include ファイルを開けません。'stadio.h': No such file or directory
とエラーが表示されます・・
0914デフォルトの名無しさん
2008/12/26(金) 21:16:55#include <stdio.h>
0915デフォルトの名無しさん
2008/12/26(金) 21:17:040916デフォルトの名無しさん
2008/12/26(金) 21:30:17ナ ゝ ナ ゝ / 十_" ー;=‐ |! |!
cト cト /^、_ノ | 、.__ つ (.__  ̄ ̄ ̄ ̄ ・ ・
ミミ:::;,! u `゙"~´ ヾ彡::l/VvVw、 ,yvヾNヽ ゞヾ ,. ,. ,. 、、ヾゝヽr=ヾ
ミ::::;/  ゙̄`ー-.、 u ;,,; j ヾk'! ' l / 'レ ^ヽヘ\ ,r゙ゞ゙-"、ノ / l! !ヽ 、、 |
ミ/ J ゙`ー、 " ;, ;;; ,;; ゙ u ヾi ,,./ , ,、ヾヾ | '-- 、..,,ヽ j ! | Nヾ|
'" _,,.. -─ゝ.、 ;, " ;; _,,..._ゞイ__//〃 i.! ilヾゞヽ | 、 .r. ヾ-、;;ノ,.:-一'"i
j / ,.- 、 ヾヽ、 ;; ;; _,-< //_,,\' "' !| :l ゙i !_,,ヽ.l `ー─-- エィ' (. 7 /
: ' ・丿  ̄≠Ξイ´,-、 ヽ /イ´ r. `ー-'メ ,.-´、 i u ヾ``ー' イ
\_ _,,......:: ´゙i、 `¨ / i ヽ.__,,... ' u ゙l´.i・j.冫,イ゙l / ``-、..- ノ :u l
u  ̄ ̄ 彡" 、ヾ ̄``ミ::.l u j i、`ー' .i / /、._ `'y /
u `ヽ ゙:l ,.::- 、,, ,. ノ ゙ u ! /_  ̄ ー/ u /
_,,..,,_ ,.ィ、 / | /__ ``- 、_ l l ``ーt、_ / /
゙ u ,./´ " ``- 、_J r'´ u 丿 .l,... `ー一''/ ノ ト 、,,_____ ゙/ /
./__ ー7 /、 l '゙ ヽ/ ,. '" \`ー--- ",.::く、
/;;;''"  ̄ ̄ ───/ ゙ ,::' \ヾニ==='"/ `- 、 ゙ー┬ '´ / \..,,__
、 .i:⌒`─-、_,.... l / `ー┬一' ヽ :l / , ' `ソヽ
ヾヽ l ` `ヽ、 l ./ ヽ l ) ,; / ,' '^i
0917デフォルトの名無しさん
2008/12/26(金) 21:33:270918デフォルトの名無しさん
2008/12/26(金) 21:54:590919デフォルトの名無しさん
2008/12/26(金) 22:16:58君にはプログラミングにとって重要な素養が欠けているようだ。それは、注意深さだ。
0920デフォルトの名無しさん
2008/12/26(金) 23:28:08初心者が学ぶに最適な本をいくつかありませんか?
0921デフォルトの名無しさん
2008/12/26(金) 23:31:49自機や弾などの画像はメインウィンドウにそのまま貼り付けるよりサブウィンドウに貼り付けて
サブウィンドウをメインウィンドウ上で動かしたほうが当たり判定等が楽になったりしないかな?と思ったんですが、
どう実装するのが一般的なんですか?
0922デフォルトの名無しさん
2008/12/26(金) 23:38:430923デフォルトの名無しさん
2008/12/27(土) 00:24:43ユージ・・君・・・って・・誰?
0924デフォルトの名無しさん
2008/12/27(土) 00:33:41あんたも注意力が足りない。
>c:\documents and settings\yuji\my documents\
0925デフォルトの名無しさん
2008/12/27(土) 00:37:05マジで誰かに見張られてるかと思って死ぬかと思った・・(´・ω・)
0926796
2008/12/27(土) 02:24:08>CPUのキャッシュがどういう性質のものかも理解できていないじゃん。
DMA(HDD->DRAM直接転送)時は、CPU を経由しないのでCPU上のキャッシュメモリは
更新されないが、DMA が行われない場合は HDD → CPU → DRAMという経路を通るので
CPU から DRAM への書き込み時にCPUのキャッシュメモリが更新されるという理解でいますが、
間違ってますでしょうか?
CPU から DRAM への書き込み時にSSE のキャッシュ制御命令(PREFETCHT0等)で
意図的にキャッシュオフをする事も機能的にはできますが、通常、メモリに
書き込んだデータはすぐにCPUで使われる場合が多いので、通常そのような
実装はせずに、むしろ積極的にプリフェッチを利用しているものと理解していました。
0927921
2008/12/27(土) 04:29:222DのゲームはAPI使って実装してるものとばかり思っていました。
DirectXと言うことはサブウィンドウを作らずにメインウィンドウにテクスチャを貼り付けているのでしょうか?
0928デフォルトの名無しさん
2008/12/27(土) 11:09:26#include <stadio.h>
…
#include <stdio.h>
の間違いだよな?間違いだと言ってくれ!
0929デフォルトの名無しさん
2008/12/27(土) 11:23:470930デフォルトの名無しさん
2008/12/27(土) 11:28:000931デフォルトの名無しさん
2008/12/27(土) 11:30:31スタンダード・アイオーか
通りすがりだがすごい収穫!
0932デフォルトの名無しさん
2008/12/27(土) 11:56:150933デフォルトの名無しさん
2008/12/27(土) 12:12:520934デフォルトの名無しさん
2008/12/27(土) 12:16:41C言語のライブラリなんだがC++のラッパーもある。
で、そのC++のラッパーがファクトリパターンみたいに
Foo::create
でポインタを返しておいて、利用者側でdeleteしろという仕様なんだが・・・
これはクソ仕様という認識でいいよな。
あるいは、C++の場合はコンパイラが違ったらどっちにしろリンクできないから、
必ずコンパイラは同じだという確信犯でやってるのか?
自分でC++ラッパ書くしかないなーと思ってるけど、このあたり実際どうなん?
0935デフォルトの名無しさん
2008/12/27(土) 13:29:01おそらくこれ以上はスレ違い
DirectXスレかゲーム製作スレ(板?)へどうぞ
0936デフォルトの名無しさん
2008/12/27(土) 13:47:28標準ライブラリをいくつか覚えれば、std〜で始まるライブラリが沢山あるから気付くんだけどな
stdioはライブラリのことをろくすっぽ覚えない内から使うからスタジオとか間違える奴が結構居るね
そして俺も小坊の頃は確かにスタジオだと思っていた
0937デフォルトの名無しさん
2008/12/27(土) 13:54:240938デフォルトの名無しさん
2008/12/27(土) 14:12:500939デフォルトの名無しさん
2008/12/27(土) 15:16:020940デフォルトの名無しさん
2008/12/27(土) 17:45:35opendir,readdir,closedirを使って
引数で指定したディレクトリにある画像ファイルをすべて読み込むプログラムを作っています
読む込む部分はコーディング済みで、load_image_data()とします
int main( int argc, char *argv[] )
{
DIR *dir; /* ディレクトリ情報を示すためのポインタ */
struct dirent *dp; /* 各エントリの情報を示すための構造体ポインタ */
char path[512];
if( argc <=1 ) {
strcpy( path, "." );
} else {
strcpy( path, argv[1] );
}
if(( dir = opendir(path) ) == NULL ){
perror("opendir");
exit(-1);
}
for(dp=readdir(dir);dp!=NULL;dp=readdir(dir)){
load_image_data(dp->d_name);//読む込む
}
closedir(dir);
}
こんな感じでやろうとおもってるのですが、読み込む際、
指定ディレクトリではなくカレントディレクトリの走査になってしまいます。
ググってみたのですが、指定ディレクトリのファイル一覧表示はよくみかけるのですが、
読み込むのは見つかりませんでした、アイデアだけでもご教授ねがえませんか
0941デフォルトの名無しさん
2008/12/27(土) 17:46:410942デフォルトの名無しさん
2008/12/27(土) 17:52:54にディレクトリとファイル名、2つを渡す感じですか?
0943デフォルトの名無しさん
2008/12/27(土) 18:43:03path と dp->d_name を '/' で結合しなきゃ。
load_image_data 内でやっても、呼び出し元でやってもいいけど。
0944940=942
2008/12/27(土) 19:24:33がんばってみます
ありがとー
0945デフォルトの名無しさん
2008/12/27(土) 19:29:420946デフォルトの名無しさん
2008/12/28(日) 00:50:55通販を愛用するエログッズ・マニアが戦々恐々だ。
エロいマウスパッドの購入者に対し、恥ずかしすぎる商品名が明記されたままの梱包箱が送られていたことが、購入者からのクレームで25日、明らかになった。
妻や同棲中の彼女に内緒で、単なるマウスパッドとして購入したはずの宅配便。
到着の瞬間が、とんだ悪夢となってしまった。
「おっぱいがいっぱいセット」(1万5000円)の購入者のもとに届いた箱に、商品名がストレートに明記されていたのだ。
この商品は、いわば「立体型エロマウスパッド」。
ゲームソフトメーカー「AKABEi SOFT2(あかべぇそふとつぅ)」(福岡市)が、ファンクラブ限定の代金引換通販で販売。
手首を固定するパッド下部が、弾力のある少女の胸の谷間や尻の割れ目になっており、妄想と実用性を満たす画期的アイテムとして話題となっていた。
24日、購入者のクレームで事態が発覚。このテの商品は通常、中身がわからないような内容表示になっている。
発売元はHPで「一企業として管理意識の低さを大変恥ずかしく思っております」と謝罪したが、たちまちエロゲーム愛好者が集まるサイトで知れ渡り、格好のネタになった。
0947デフォルトの名無しさん
2008/12/28(日) 00:51:23これを用途によって間違わずに使い分けるより、new-deleteの対応付けをきっちりやる方が余程簡単だっつーのw
ホント馬鹿だな。
0948デフォルトの名無しさん
2008/12/28(日) 00:53:570949デフォルトの名無しさん
2008/12/28(日) 00:59:14でも、スマートポインターの設計者とC++の言語設計者は別なので、
的外れの質問をしてる>>947が馬鹿。救いようの無い馬鹿。
0950デフォルトの名無しさん
2008/12/28(日) 00:59:340951デフォルトの名無しさん
2008/12/28(日) 01:12:31あなたのような頭の良い人には smart pointer は必要無いですから使わないでください。
0952デフォルトの名無しさん
2008/12/28(日) 05:05:19voli... なんとかだった気がするけど・・・
0953デフォルトの名無しさん
2008/12/28(日) 05:15:350954952
2008/12/28(日) 05:15:570955デフォルトの名無しさん
2008/12/28(日) 10:10:17getchar();を標準でしてくれればいいのに。
0956デフォルトの名無しさん
2008/12/28(日) 10:17:01「デバッグ開始」で実行するならブレークポイントくらい設定してるだろうし
「デバッグなしで開始」なら止まらないだろうからプログラム終了時に pause が入る。
0957デフォルトの名無しさん
2008/12/28(日) 10:17:500958デフォルトの名無しさん
2008/12/28(日) 10:35:11標準で入っていない: 止める/止めないは標準入出力で簡単に制御できる。
標準で入っている: 止める/止めないは特殊なAPIを呼ぶ必要がある。
前者の方が圧倒的にシンプル
0959デフォルトの名無しさん
2008/12/28(日) 11:03:04君向いてないよ
0960デフォルトの名無しさん
2008/12/28(日) 11:10:180961デフォルトの名無しさん
2008/12/28(日) 11:17:350962デフォルトの名無しさん
2008/12/28(日) 11:41:250963デフォルトの名無しさん
2008/12/28(日) 14:31:55関数に数値を渡すのと同じ計算結果になるし、意味ないような気がします
0964デフォルトの名無しさん
2008/12/28(日) 14:32:50同じ?何と何が同じなんだ
0965デフォルトの名無しさん
2008/12/28(日) 14:35:35何が言いたいのかわからん。関数から数値返さないで関数で計算する
簡単な例出してみて。できることはできるよ。
0966デフォルトの名無しさん
2008/12/28(日) 14:44:10C/C++ でいう「関数」は、数学的な意味での関数ではない。
(最初に「関数」と訳した奴がすべて悪い)
なので
>関数に数値を渡すのと同じ計算結果になる
という保証はない。
0967デフォルトの名無しさん
2008/12/28(日) 14:45:05だったら使わなければいいと思います
0968デフォルトの名無しさん
2008/12/28(日) 14:47:130969デフォルトの名無しさん
2008/12/28(日) 15:36:05関数に数値を渡す
#include <stdio.h>
int sum(int,int); /* プロトタイプ宣言 */
int main(void)
{
sum(50,100);
return 0;
}
int sum(int min,int max)
{
printf("%d\n",(min + max) * (max - min + 1) / 2);
return 0;
}
0970デフォルトの名無しさん
2008/12/28(日) 15:37:58#include <stdio.h>
int sum(int,int); /* プロトタイプ宣言 */
int main(void)
{
int value;
value = sum(50,100);
printf("%d\n",value);
return 0;
}
int sum(int min,int max)
{
int num;
num = (min + max) * (max - min + 1) / 2;
return num;
}
計算結果が同じ3825になるし
なんで返さなきゃいけない必要があるのか解らないです
0971デフォルトの名無しさん
2008/12/28(日) 15:40:50返す方はそれをまたさらに加算したりできるだろ。
0972デフォルトの名無しさん
2008/12/28(日) 15:46:12そ・・そうか!!!
ありがとうございます!
0973デフォルトの名無しさん
2008/12/28(日) 16:26:50そのときの合計を求めるプログラムをwhileを使って作りなさい。
0974デフォルトの名無しさん
2008/12/28(日) 16:31:18分かった
0975デフォルトの名無しさん
2008/12/28(日) 17:31:170976デフォルトの名無しさん
2008/12/28(日) 17:33:290977デフォルトの名無しさん
2008/12/28(日) 17:47:541行目は「1の2乗+……が」というように式をそのまま提示しているのに2行目では「そのときの合計」と書いている。
1行目がそのままなら2行目では「そのときの値」で充分だし、
2行目を「そのときの合計」としたいのなら1行目は「1の2乗+……の合計が」とでもするべきだ。
尤もそれなら、「この数式のn項までの合計」とでもした方が余程間違いのない表現だと思うが。
何も考えずにこんな表現を使ったのならば只の馬鹿だし、考えた上でこの表現になったのなら間抜けだ。
0978デフォルトの名無しさん
2008/12/28(日) 18:14:10難しい・・難しすぎる・・!!
0979デフォルトの名無しさん
2008/12/28(日) 18:30:31教科書に書いていた通りに書いた
0980デフォルトの名無しさん
2008/12/28(日) 18:46:020981デフォルトの名無しさん
2008/12/28(日) 19:53:50release 時は実行後に pause コマンドを呼んでくれている。
これをデバッグ版でも呼べるようにするオプションくらい
つけてくれてもバチはあたらんと思うんだがね。
0982デフォルトの名無しさん
2008/12/28(日) 19:53:570983デフォルトの名無しさん
2008/12/28(日) 20:13:240984デフォルトの名無しさん
2008/12/28(日) 20:28:16いちいち止まる方が面倒だ
なんで結果が見たいのにデバッグで実行するんだ
0985デフォルトの名無しさん
2008/12/28(日) 21:08:25CPUが古いCerelonなのであんまり重すぎないものでお願いします。
0986デフォルトの名無しさん
2008/12/28(日) 21:09:540987デフォルトの名無しさん
2008/12/28(日) 21:13:590989デフォルトの名無しさん
2008/12/28(日) 21:20:24それじゃ、その教科書の著者編者採用担当者が総じて間抜けなんだろうな。
0990デフォルトの名無しさん
2008/12/28(日) 22:27:16ならばスレ違いだボケナス。
0991デフォルトの名無しさん
2008/12/28(日) 23:31:14言語なんてものは楽しんで覚えなきゃ。
レス数が950を超えています。1000を超えると書き込みができなくなります。