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


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

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



1 名前:デフォルトの名無しさん [2006/05/04(木) 08:53:09 ]
入門者向けの俺に聞けスレです。
なんでもきいてよね

514 名前:デフォルトの名無しさん [2006/06/25(日) 00:23:31 ]
バブルソートを少しヒントをもらって、なんとか自力でやりとげたんですが
これってどのぐらいの難易度なんですか?
自分はかなり努力したつもりですがみなさんからみたら初歩なんですかね?

515 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 00:26:12 BE:59908234-#]
>>514
バブルソートは、アルゴリズムの本にソースが載ってたんで、
自分で考えるなんてことはしたことがない。

516 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 00:35:35 ]
>>514
初歩的だが、もっと効率の良いソートを理解する前の前座程度。
しかも、今後作るプログラムにはバブルソートなんて使わず
もっと高速なソートが使われるし、自分で定義しなくてもできたものがあるしね。

517 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 01:01:51 ]
>>483
どうあっても結婚まで発展しなさそうな気がするんだが


518 名前:デフォルトの名無しさん [2006/06/25(日) 01:13:38 ]
C言語を勉強するとAVのモザイクが外せると聞いたのですが
どのようにするといいのか教えてください。

519 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 01:14:14 ]
勉強しろ

520 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 01:15:19 ]
別にCじゃなくても出来ると思うが

521 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 01:15:41 ]
ソートのアルゴリズムはいくらでもそれ専用の本でてるじゃん
それを言語に置き換えるだけで、アルゴリズム理解しようとは思ったこともなかったわ。
シェルソートとクイックソート覚えるだけで良し


522 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 02:05:39 ]
今日からC言語をやってみたいと思うのですが
C言語を使えばどんなものが作れるのかを教えてください。

その中から簡単そうなプログラムから一つずつ作って行って
C言語を学んでいこうと思います。



523 名前:522 [2006/06/25(日) 02:41:58 ]
C言語についてググッてC言語のソースを見てみて
感じたのですが。
C言語のソースって、なんだかPerlによく似ているような気がする。
補足するようですが私はPerlを使ってのCGIなら組んだことはあります。

C言語の\nってもしかして、改行を意味する命令?
ifってPerlで使っているifと一緒?

だったら、画面に文字を表示する命令は

print "文字\n";

でしょうか?

524 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 02:46:56 ]
>>523
本読め寝言を書き込むな。薬でもやってるのか?

525 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 02:52:17 ]
>>523
命令制御コード制御文の基礎から勉強しとけ


526 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 03:26:04 ]
ググレば腐るほど入門出てくるというのに…


527 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 04:24:32 ]
どの入門書がいいですか
都会の本屋に行ったら種類が山ほどあって
近所の本屋に行ったら一冊もなくて
迷います

528 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 04:37:50 ]
>>527

ネットで検索してネットで注文しなさいよ

プログラミング言語C ANSI規格準拠
B.W. カーニハン

これを、理解できるまで何百回も読み直せ


529 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 04:41:57 ]
やっぱりその本が一番いいんですかね・・・
お小遣い貯めて買います

530 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 13:09:44 ]
小学生が2chやってんじゃねーよ

531 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 20:21:20 ]
小学生ではありません
立派なニートです

532 名前:デフォルトの名無しさん mailto:sage [2006/06/25(日) 23:59:37 ]
実家引きこもりで小遣い貰ってるって香具師か。
いきなり本買う前に近所の図書館で借りて読んでみたほうがいいよ。



533 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 00:51:17 ]
>>528
ちうかそれ、出版された日付が古いぞな・・・
ANSI基準もそれから変わった部分もあるんでは?

534 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 01:08:41 ]
バブルソートの件を書きこんだものです。
みなさん返信くださってありがとうございます
なんかへこみましたが‥これからも頑張ります

535 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 01:15:55 ]
>>534
そりゃ経験があなたとは何万時間も違うような人から見たら、
バブルソートなんてアホみたいなものに見えちゃうさ。

別にへこむこと無いよ。そのまま突っ走れ。

536 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 01:41:43 ]
図書館は敷居が高くて・・・
バブルソートです

537 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 01:46:27 ]
基本情報やソフトウェア開発の本にもソートについては出てくるが
最初はバブルソートだな。けど、この仕組みを理解するのに苦労するのは
先行き不安だね・・・。単純に、各々の要素を配列の先頭から比較して並び替える程度だし。
まぁ、頭の中だけでなく、実際に数字を並べて自分で並び替えて仕組みを理解してみ。
んな難しくないことだし。

538 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 02:15:23 ]
>>536
どこかの大学の講義資料とか漁ってみ。
学外から見れるところもまだ結構残ってる。

539 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 02:32:58 ]
ttp://www.elc.ees.saitama-u.ac.jp/ProgrammingI/
ここにあるけど、ここのは配列の後ろの要素から比べているね・・・
自分が見たものの多くは前からだったが、まぁ概要は同じなんで

540 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 04:00:40 ]
前からも後ろからも計算量は同じだし。
降順に並べるか昇順に並べるかの差。

Cには関係ない。アルゴリズムの本読めばソートの解説載ってる。
数学屋の理論的な蘊蓄付きで。

541 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 04:17:20 ]
>>539はモロにC言語なんだがw

542 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 12:45:00 ]
>>541
君は日本語の勉強を先にした方がいいよ。



543 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 14:24:46 ]
>>533
いや、この本を理解できればどんなCのマニュアルも理解できる
っつうことでさ。

おれが生まれて初めて読んだ時は10回読んでも理解できんかったw


544 名前:デフォルトの名無しさん [2006/06/26(月) 14:58:38 ]
>Cに=関係ない
>>540>>542>>539のPDFが見られず
人間の言葉以前に状況も理解できないサル以下の知能しかないようだ
>>539はバブルソートをC言語で表したものだが?
頭が悪い以前に自分勝手な主観や意見だけでゴリ押しする
周りを無視するタイプだな
所詮、低学歴、低俗、低レベルな奴

545 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 15:03:51 ]
>>540>>542はこのスレの流れも理解していないようだ。
>>538には
>大学の講義資料とか
あるため、大学でそれに関する文献を公表している場所を示して
話が続いただけなんだが、無理やりバブルソートを話を終わらせようと必死こいた結果
ここはお前が中心になって話を進めるスレじゃないんで、他へ行った方が良いよ?
そういう考えはまともなソースをかけないクズの考え。
一つ一つおろそかにせず、順を追うことは重要。
なぜなら、効率が悪いアルゴリズムを改善していくという部分の勉強も含まれているから。

現代人は最初っから便利なものを使っている。が、その便利なもの
手法が作られる経緯をろくに知らず、さらに、現代の問題を無視して
現在使っているものが引き起こす問題をそのままにしておく傾向もある。
そういう改善をする考えをもてなければ、プログラマとしてでなく
知能を持った人間として成長しない人間になるよ。

546 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 15:05:48 ]
>>540
>前からも後ろからも計算量は同じだし。
誰もそんなことは聞いてないw
>降順に並べるか昇順に並べるかの差。
え?後ろから比較するか前から比較するかの差は分かるけど?

>Cには関係ない。
モロにC言語で記述されたソースが提示されてんですけどぉ?
C言語でないって言うならスレタイを見て「お前」には聞いてねーって思えよ?w

>数学屋の理論的な蘊蓄付きで。
数学の話なんてしてねーよ

547 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 15:07:53 ]
>>542が必死こいて自分の勘違いを認めないレスをする↓

548 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 15:18:49 ]

 ま た お 前 か


549 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 15:27:08 ]
前からか後ろからかで実際の速度が変わる環境は多いと思うがね。

550 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 15:34:02 ]
>>549
それは一概に言えないけど、とりあえず上の流れは
明らかに大学のプログラムの講義でC言語を使っているものを例に出しているけどね
そういうと、今度は無理なこじつけとか言い出すだろうけど、C言語において
ソートは出てくるんで、あまり細かいことを言っていたら
それじゃC言語でなんのプログラムを作るの?って話にまで発展しちゃうんで
一例を出しての話はおkだな

551 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 16:33:18 ]
面減る

552 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 17:08:59 ]
メンヘル型かまってちゃん症候群



553 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 17:19:28 ]
お勧めC本(ステップアップ順)
やさしいC
しばたぼうようのC入門のやつ
独習C++
ダイテル親子の本
K&R

554 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 17:57:35 ]
すいません
質問したものですが私のために揉め事になってしまっているようで
どうもすいませんでした
家の物置を整理したところ
兄の使っていたC言語の本と思しき書物がありましたので
ひとまずそれを繙いてみます

555 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 19:25:20 ]
>>554
古そうな本はやめておけ。
Cだって生まれたときから今まで全く同じ姿だったわけではない。
せいぜい10年以内できれば5年以内のもので、お前が合っていると感じればよいと思う。

556 名前:名無し [2006/06/26(月) 19:26:15 ]
>>517
イケメンなら結婚できる。
void life(const char *job)
{
 int age,lifetime;

 if(strcmp(job,"プログラマ") == 0)
 {
  lifetime = 50;
 }
 else
 {
  lifetime = 70;
 }
 
 age=-1;

557 名前:続き [2006/06/26(月) 19:27:46 ]
 while(++age<lifetime)
 {
#ifdef IKEMEN
  if(9<age && age<25)
  {
   printf("%d 人目の彼女が出来ました。\n",age-9);
  }
  else
  {
   if(age==25)
   {
     puts("結婚しました。");
   }
   else
   {
    if (age>29)
    {
     printf("%d 人目の愛人が出来ました。\n",age-29);
    }
   }
  }
#endif
  sleep(31536000);
 }
}

558 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 19:49:22 ]
#ifdef IKEMEN
  if(9<age && age<25)
   printf("%d 人目の彼女が出来ました。\n",age-9);
  else if(age==25)
    puts("結婚しました。");
  else if (age>29)
   printf("%d 人目の愛人が出来ました。\n",age-29);
  }
#endif

でいいじゃないか。
何でそんなにネスト掘り下げてんの?

559 名前:デフォルトの名無しさん [2006/06/26(月) 21:03:39 ]
>>558
else と if がどこに懸かっているのかが分かりにくいから。

560 名前:デフォルトの名無しさん [2006/06/26(月) 21:29:37 ]
初心者へ上司からの指令です。

C言語を使って「愛していますか?」って表示させるプログラムを組んでみよ。
さらに、YESとNOの選択を用意して
YESを選択すれば「もちろん!」
NOを選択すれば「なわけねーだろ!」
って表示させるプログラムを組んでみよ。

561 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 22:05:23 ]
>>559
いつか、ひと目で解るようになれるといいですね。

562 名前:デフォルトの名無しさん [2006/06/26(月) 23:00:16 ]
>>560
文字列の受け取り方が分かりません('A`)

int main(void) {
       char yn;

       do {
              printf("愛していますか?");
              printf("(y/n) > ");
              scanf("%c", &yn);
              while (getchar() != '\n') { }

              if (yn == 'y') {
                     printf("もちろん!\n");
                     break;
              } else if (yn == 'n') {
                     printf("なわけねーだろ!\n");
                     break;
              } else { printf("yかnを入力してください。\n"); }
       } while (!(yn == 'y' || yn == 'n'));

       return 0;
}



563 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 23:09:09 ]
534です。
みなさん色々指示してもらって。助かります。
>>535さんの発言どうり途中であきらめず、この世界で
やっていこうと本気で思いました。本気で突っ走りたくなったんで
更に更に勉強します。

564 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 23:24:54 ]
思いとどまれよ。
人生負け組みになりたくなければ。

565 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 23:31:06 ]
>>564
ひとそれぞれだよ。
俺は今年で35歳になるが、この業界に入って後悔したことはただの一度も無い。
負け犬だと思ったこともないし。客観的に見れば社会的ステータスは低いんだろうけどね。

566 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 23:32:18 ]
質問なんですが
scanfとgetsこの二つは
なにが違うのですか??
初心者ですいません

567 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 23:36:27 ]
ゲッツは文字列を受け取る
スキャンエフも文字列とか受け取れるがゲッツの方が使い勝手がよいと自分なりに勝手に拝借して候

568 名前:デフォルトの名無しさん mailto:sage [2006/06/26(月) 23:52:53 ]
scanfはスペースがあるとそこで区切られるよね。
ところでgetsって
ゲッツ?ゲットエス?

569 名前:デフォルトの名無しさん mailto:sage [2006/06/27(火) 00:16:44 ]
getStringの略だからゲットエスだろ。
getsは文字列(string)を受け取るだけ。
scanfは書式指定(Format)できるから、文字列じゃなくて数値とか
いろいろ入力できる。

ま、本当はバッファオーバーランを防ぐためにもfgetsを使う
べきだと思うが。

570 名前:デフォルトの名無しさん mailto:sage [2006/06/27(火) 00:33:45 ]
>>568
区切られずに読ませる方法もある。

571 名前:デフォルトの名無しさん mailto:sage [2006/06/27(火) 00:45:55 ]
>>566
むしろ同じ所などない。
全てにおいて異なる。

572 名前:デフォルトの名無しさん mailto:sage [2006/06/27(火) 00:51:58 ]
>>566です
教えてくれた人ありがとうございます。
勉強になりました




573 名前:デフォルトの名無しさん mailto:sage [2006/06/27(火) 16:32:42 ]
opendirはNo errorなのに
readdirでBad addressって言われるのってどういう場合が考えられる?
環境はWindowsのMingwです。

574 名前:デフォルトの名無しさん mailto:sage [2006/06/27(火) 18:58:59 ]
単に終端に達したのを勘違いしたとか

575 名前:デフォルトの名無しさん mailto:sage [2006/06/28(水) 10:50:19 ]
ん〜?ファイルはあるんだけどなぁ。でもそれくらいしかあり得ないか・・・。解答どうもでした。


576 名前:デフォルトの名無しさん [2006/06/28(水) 23:27:59 ]
文字列のなかで特殊文字(%や”など)が入っているかをチェック
するときどのようにすればよろしいでしょうか。
目的はSQLでエラーになるような特殊文字を検索時の値として渡さないようにしたい

577 名前:デフォルトの名無しさん mailto:sage [2006/06/28(水) 23:44:41 ]
>>576
一文字づつチェックすればいいだろ。



それより、そういう文字は普通、エスケープして渡すべきだと思うよ。

578 名前:デフォルトの名無しさん [2006/06/28(水) 23:50:36 ]
エスケープして渡すべきとは具体的にどうすればいいいのですか。

579 名前:デフォルトの名無しさん mailto:sage [2006/06/28(水) 23:52:51 ]
>>576
つ[strcspn]

580 名前:デフォルトの名無しさん mailto:sage [2006/06/28(水) 23:54:35 ]
SQL エスケープでぐぐれ

メタ文字の意味を消失させる事
例えばCの文字列定数なら"\\"みたいな

581 名前:デフォルトの名無しさん mailto:sage [2006/06/28(水) 23:55:29 ]
>>578
そのSQLの仕様見れ

582 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 10:03:59 ]
Visual C++ 6.0上で実行すると、「Press any key to continue」が最後に出るのに、
直接実行すると、「Press any key to continue」が出ずに
すぐに終わってしまいます。どうすれば、
直接実行したときに、「Press any key to continue」が出るようにできるのでしょうか?



583 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 10:42:11 BE:15528724-#]
main関数の最後に
puts("Press any key to continue.");getch();
と書いておく。

584 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 16:56:59 ]
>>582
末尾に
system("PAUSE");

585 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 16:59:05 ]
>>582
コマンドプロンプトを立ち上げて
実行プログラムがある場所に移動してから実行するとか

586 名前:デフォルトの名無しさん [2006/06/29(木) 20:19:49 ]
コマンドプロンプト上でカーソル位置を自由に設定する方法を教えてください。
メニュー画面を作って、メニュー番号を入力させるプログラムを作りたいの
ですが、メニュー画面を表示させることはできるのですが、
画面上の真ん中あたりに、メニュー番号を入力させるところを作りたいのですが、
そこに、カーソルをもってくるにはどうしたらいいですか?
お願いします。

587 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 20:48:22 ]
コンソールAPI でぐぐる。

588 名前:586 mailto:sage [2006/06/29(木) 21:01:06 ]
>>587
ありがとう!!

589 名前:586 [2006/06/29(木) 22:12:54 ]
ごめんなさい、やっぱわかんなかった。
VCじゃなくって、まったくのc言語だけでカーソル移動とかさせたいのだけど、
windows.hとか使わないでやる方法教えてください。

590 名前:デフォルトの名無しさん mailto:sage [2006/06/29(木) 22:17:07 ]
>>589
ない。
そもそも、標準Cにコンソールとか言う概念自体がない。

591 名前:586 mailto:sage [2006/06/29(木) 22:21:42 ]
>>590
そうなのか、、ありがと

592 名前:デフォルトの名無しさん mailto:sage [2006/06/30(金) 01:03:38 ]
すげぇなぁ。
>メニュー画面を作って、
>メニュー番号を入力させるプログラムを作りたいのですが、
>メニュー画面を表示させることはできるのですが、
>画面上の真ん中あたりに、
>メニュー番号を入力させるところを作りたいのですが、
>そこに、
>カーソルをもってくるにはどうしたらいいですか?
なげぇ文だぜ。
きっとプログラムもmain()で冗長に書いているのだろう。



593 名前:デフォルトの名無しさん mailto:sage [2006/06/30(金) 16:42:41 ]
文字列の部分コピーをやりたいです。
先頭から n 文字目までのコピーなら strncpy(*char, *const char, int); で実現できますが、
n 文字目から最後までのコピーは、char配列の1成分ずつfor文等でコピーしないといけないのでしょうか?

594 名前:デフォルトの名無しさん mailto:sage [2006/06/30(金) 17:43:09 ]
>>593
strcpy(dst, src+n);

595 名前:593 mailto:sage [2006/06/30(金) 18:38:32 ]
>>594
できました。ありがとうございます。
このような使い方が出来るとは・・・覚えておきます。

596 名前:デフォルトの名無しさん mailto:sage [2006/06/30(金) 19:05:37 ]
>>595
ポインタとヌル終端文字列の基本テクです

597 名前:デフォルトの名無しさん [2006/06/30(金) 22:56:30 ]
do-while文で、整数を入力して、0になったらおわりという文はどうしたらいいのですか?最近プログラムの勉強始めたばかりで申し訳ありません

598 名前:デフォルトの名無しさん mailto:sage [2006/06/30(金) 23:19:56 ]
>>597 適当に答えてみる
#include <stdio.h>
#include <stdlib.h>
int main(void)
{
int num;
char tmp[256];
do{
num=atoi(gets(tmp));
}while(num!=0);
return 0;
}

599 名前:582 mailto:sage [2006/07/01(土) 00:25:26 ]
>>583,584,585
ありがとうございます。system("PAUSE");を利用することにしました。

>>597
#include <stdio.h>
int main(){
int n;

do{
scanf("%d",&n)
if(n<1) printf("1以上の整数を代入してください!");
}while(n<1);

do{
n--;
}while(n!=0);

return(0);
}

実行してないからバグあるかもしらん。


600 名前:デフォルトの名無しさん mailto:sage [2006/07/01(土) 01:04:31 ]
598、599さん、素早い返答ありがとうございます。実は猫でもわかるシリーズの本にあった例で、do〜while(n)で終わってて理解できなかったんです。初学者ゆえこれからも質問しますが、よろしくお願いいたしますm(__)m。

601 名前:デフォルトの名無しさん [2006/07/02(日) 13:57:54 ]
double a=123456.6789
b=-12345.6789

printf("a=%10.4f b=%10.4f\n",a,b);
printf("a=%7.4f b=%7.4f\n"),a,b);

の結果が両方とも

a=123456.6789 b=-12345.6789になるのはどうしてでしょうか?

602 名前:・∀・)っ-○◎● ◆toBASh.... [2006/07/02(日) 14:07:24 ]
>>601
%10.4fは、浮動小数の「小数点以上」ではなく「全体の幅」を10文字で表すと言う意味。
もちろん小数点以上の桁数が足りない場合は自動的に補われる。
小数点以下の「4」の部分は、小数点以下に使う桁数の指定。

どっちも7文字でも10文字でも表しきれないので11文字に拡張されて同じ表示になる。



603 名前:デフォルトの名無しさん mailto:sage [2006/07/02(日) 14:15:07 ]
>>601
pc8.2ch.net/test/read.cgi/tech/1148993760/671

604 名前:デフォルトの名無しさん [2006/07/02(日) 14:15:33 ]
>>602
よくわかりました。ありがとうございます。

605 名前:デフォルトの名無しさん mailto:sage [2006/07/02(日) 14:30:09 ]
目がおかしくなったかなぁ。
>601の後者はコンパイルさえ通らないし、二番目の%10.4fの結果は12桁になるようにしか見えない。

606 名前:デフォルトの名無しさん [2006/07/02(日) 16:02:02 ]
Boland C++ Compiler 5.5でアプリケーションプログラムをコンパイルする方法を
教えてください。

パラメータ 'hWnd'は一度も使用されない
パラメータ 'hPrevInstance'は一度も使用されない
パラメータ 'lpCmdLine'は一度も使用されない

といった警告はどうしたら消えるのでしょうか?

607 名前:・∀・)っ-○◎● ◆toBASh.... [2006/07/02(日) 16:09:20 ]

int WINAPI WinMain(
HINSTANCE /* hInstance */
, HINSTANCE /* hPrevInstance */
, LPSTR /* lpCmdLine */
, int /* iCmdShow */
)
{
 // ほげほげ
}

608 名前:デフォルトの名無しさん mailto:sage [2006/07/02(日) 16:36:34 ]
その気持ちの悪いカンマの位置はどんなメリットがあるんだ?
たまに見かけるんだが。

609 名前:デフォルトの名無しさん mailto:sage [2006/07/02(日) 17:50:20 ]
Borland Developer Studio 2006 No.06
pc8.2ch.net/test/read.cgi/tech/1151562315/l50


int WINAPI WinMain(
 HINSTANCE,
 HINSTANCE,
 LPSTR,
 int,
)
{
 // ほげほげ
};
ってやっちまって、コンパイルエラー出て悩むのを防ぐ馬鹿除けでは?

610 名前:デフォルトの名無しさん mailto:sage [2006/07/02(日) 18:10:34 ]
俺ならint WINAPI WinMain(HINSTANCE, HINSTANCE, PSTR, int)って1行に書く。

611 名前:デフォルトの名無しさん mailto:sage [2006/07/02(日) 18:11:34 ]
一応言っておくと>>607-610のように仮引数名を省略できるのはC++だけで、Cではできない。

612 名前:デフォルトの名無しさん mailto:sage [2006/07/02(日) 18:40:04 ]
あれ? C99でできなかったっけ?



613 名前:デフォルトの名無しさん mailto:sage [2006/07/02(日) 18:47:37 ]
nに入力した数字の数だけ$を表示するプログラムを作ったんですが
数字を入力するとなんか沢山$が出てきちゃいます。
改善方法はありませんか。よろしくお願いします。
#include <stdio.h>
int main(void){
int a;
char c;
while(1){
printf("C=");
scanf("%c",&c);
if(c==0)
break;
if((c <= 'A' && c <= 'Z') || (c <= 'a' && c <= 'z')){
printf("英数字ですぅ\n");
continue;
}
else{
for(a=1;a<=c;a++)
printf("$");
}
  }
}

614 名前:デフォルトの名無しさん mailto:sage [2006/07/02(日) 19:58:25 ]
>>613
・scanf()の戻り値をチェックしないとcの値が有効かどうか判らない。
・cには文字が入っている。それは数値ではないので0と比較する意味が殆どない。
・同じ理由で、$の数は文字コードの値に依存してしまう。

やりたいことがよく判らんが、入力と処理を分けて考えた方がいいんじゃないか?






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

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

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