■掲示板に戻る■ ■過去ログ倉庫めにゅーに戻る■
ウルトラ初心者の質問スレ
1 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/14(火) 13:56
「C言語って何ですか」「switch文がよくわからない」
っていう超初級の質問から、
「ゲームまで作ろうと思ったらどんなスキルが必要なんですか?」
「結局どこまで覚えればいいの?」
てな+α質問まで。

初心者スレでさえ冷笑されるようなド素人からの質問も、受け付けます。
質問スレでさえ「入門書に帰れ」「そんな基本的なこと聞くな」とか
言われるウルトラ初心者はここで聞いてね。

俺以外でも、親切な人は教えてやってください。
マターリいこうよ。



2 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/14(火) 14:29
そもそもプログラムってなんですか?


3 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/14(火) 14:32
ネタスレと化すに10円。


4 名前: 名無しちゃん 投稿日: 2000/11/14(火) 14:35
Borland C++ Compiler とゃらをDL ιたけど、C++ぁんまり分かっτなくτ。
どっかょぃ勉強ぺぇι゛(τぃぅかリファιソスみたぃの(?))は無ぃでせぅか?


5 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/14(火) 14:50
どうしても彼女が濡れません
ローション代も馬鹿にならないのですがどうしたらいいでしょうか


6 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/14(火) 15:11
ウルトラマンと帰ってきたウルトラマンの区別がつきません
あと、彼らはいつも同じ格好ですが、あれは裸なのでしょうか?

ウルトラ板で聞いたら「入門書に帰れ」「そんな基本的なこと聞くな」
といわれたのでここで質問します




7 名前: マジレス野郎 投稿日: 2000/11/14(火) 16:52
>>5
水でもかければいいのでは?


8 名前: マジレス野郎弐号 投稿日: 2000/11/14(火) 17:59
>5
風呂にゆっくり浸かって体を暖めろ
更に風呂上がりに蒸しタオルでダイレクトに膣口を暖めろ
前戯で氷使ったりしてないだろうな?


9 名前: マジレス野郎弐号 投稿日: 2000/11/14(火) 18:05
>5
風呂にゆっくり浸かって体を暖めろ
更に風呂上がりに蒸しタオルでダイレクトに膣口を暖めろ
前戯で氷使ったりしてないだろうな?


10 名前: ああっ名無しさまっ 投稿日: 2000/11/14(火) 20:52
>>6
裸の背中ならチャックはついていないだろう


11 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 00:49
あのーC言語の教本でいいの教えてください。
皆さん同じような質問百回くらい見たかもしれませんがお願いします。


12 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 00:55
黙秘権を行使します。


13 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 01:46
教えたいのは山々なんだけど、それ言っちゃうと後が怖いから教えない。


14 名前: 13 投稿日: 2000/11/15(水) 02:07
Cの本は林はるぴこがいいよ!


15 名前: こぶら.Japan 投稿日: 2000/11/15(水) 02:29
C/C++のこむぱいらは何がよいですか?
お金が無いので無料の方が良いです。
本気なのでお願いします。
それからJDKを落としましたが、
C:\jdk1.3\demo\applets\Animator\example1.html―example4.html
のアニメが表示されません。一体、どうなっているのでしょうか?
わかる人親切に教えて下さい。
いつまでも待ってます。よろしくお願いします。



16 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 02:31
水って意外とすべりが悪いぞ。
俺ならべろんべろんに舐めまわして、(もちろん俺のも舐めてもらって)
つばでべちょべちょにしてから、やるなー


17 名前: 花と名無しさん 投稿日: 2000/11/15(水) 02:46
>16
とりあえず童貞は氏ねよ。


18 名前: 16>17 投稿日: 2000/11/15(水) 02:50
この方法は俺が16の時に24のおねーさんに教えてもらった
方法なのだったりする。
童貞。いい響きだね。


19 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 02:58
妄想電波は逝ってくれ。


20 名前: >15 投稿日: 2000/11/15(水) 03:18
>いつまでも待ってます。
フォースを感じる。


21 名前: 名無しさん☆α 投稿日: 2000/11/15(水) 03:22
Perlが意味不明でコマテます。
タスケテゾマホソ


22 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 04:05
流れを読めずにマジレスします。
パソコン初心者で購入2ヶ月目の者です。
最近、ネットにようやく慣れてきて、
プログラムというものに興味が出てきました。

で、プログラムもいろいろあるみたいですが、
初心者はどれから学び始めたらよいのでしょうか?

もちろんココにいる皆さんのように、プログラムで
メシを食べれるようになれるなんて思っていません。
あくまで、趣味としてです。
よかったら教えてください。


23 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 04:24
>>22
これは意見が分かれると思いますが、
Winでアプリケーションを作るなら、
VisualBasic
VisualC++
C++Builder
Delphi
のいづれかでしょうね。

個人的にはC++Builderがお勧め。


24 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 05:53
MFCに対してSDKでプログラミングって良く聞くんですが、
あれってどうやってプログラミングするんですか?
DirectX SDKみたいに何かインストールしなきゃなんないんでしょうか?
俺が今持ってるのはVC6です。

あとSDKとセットでWin32APIなどと言うのも聞きますが
どういうつながりがあるんでしょうか?



25 名前: ああっ名無しさまっ 投稿日: 2000/11/15(水) 05:57
>>22
バッチファイル。DOSの勉強になるしな!


26 名前: マジレス野郎 投稿日: 2000/11/15(水) 08:39
>>22
HSPが一番いいよ。


27 名前: 結城 投稿日: 2000/11/15(水) 10:49
>11
Cの教本だったら、柴田望洋「明解C言語 入門編 例題演習」がオススメだよ。

問題演習って形だから、自分の理解が正しいかどうか、すぐにチェックできる。
なにより彼のはわかりやすい。
出版はソフトバンク。

これね。
俺はこれでCを覚えた。プロ向けの厳密な定義がないぶん、初心者が手を出すには
向いてるよ。

他の言語をやったことあるとか、もっと厳密な定義を知りたい、ってんなら他の本も
オススメだけどね。

「改定C言語入門」(ビギナー編とか4種くらいあるやつ)もビギナー用で売られて
るけど、俺には少し難しかった。
Cを一通りやった上で、Cを徹底して理解するにはいい本だけど(詳しいから)、
全くのビギナーなら逆に混乱すると思う。
こっちは1ランク上と見たほうがいい。

作るプログラムのレベルにもよるけど、そこそこのプログラムまでなら柴田っちの
本のレベルで充分。
それに不満を感じて、さらに上のスキルを求めたら別の本に手を出すといい。


28 名前: 結城 投稿日: 2000/11/15(水) 10:51
わりぃ。
リンク忘れてた。
http://www.bohyoh.com/Books/index.html



29 名前: 結城 投稿日: 2000/11/15(水) 11:08
あと、インフォシークで「C言語」を検索して、サイトで無料学習する手もある。

>15
http://www.alpha-net.ne.jp/users2/ei9711/freeprog.html
ここで、無料のコンパイラが一通り揃ってる。

フリーではLSI C-86試食版が有名らしい。
あと、Boelandもよく聞く。(フリー?)
俺はVC++(有料)でやってたのでそっちはよくわからん。

・LSI C-86試食版の設定
http://www.matsusaka-u.ac.jp/~okumura/c/lsic.html

・「C言語を始めよう」
http://hp.vector.co.jp/authors/VA010286/
なんか、C言語の設計支援をしてくれるエディタ、らしい。
使いやすいという意見は数箇所で見た。
試してないので保証はできん。
フリーのコンパイラとの設定方法とか、書いてある。


30 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 11:12
デザインパターンの本が4800円もするんで、(手取り16万円)
ウェブ上から独学したいんですけど、お勧めサイトってありますか?


31 名前: 結城 投稿日: 2000/11/15(水) 11:13
>15
追記。
すまん。JAVAのエラーはよくわからない。
設定どおりに書けばうまくいくと思うんだけど……。
やり直してもエラー出る?

アニメってのが何のことかわからんのだけど、
もしかしたらパソコン自身に動画の再生ソフトが入ってない、って
オチの可能性はある。



32 名前: 結城 投稿日: 2000/11/15(水) 11:18
>22
作るレベルによる。
本当のマジ初心者なら、最初はCの方がオススメだと思う。
覚える量は一番少ないし、教材も豊富だから。

それで、プログラムがどんなものか分かったら、目的に応じてLv
アップしていけばいいと思う。




33 名前: 結城 投稿日: 2000/11/15(水) 11:23
>24
すまん。俺のレベルを越えてしまった(早っ)
分かる人、教えてあげてほしい。
他の初心者スレでも聞いてみると効率いいかも。
あっちはレベル高いから。


34 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 11:51
>>32
そうかな。本当の初心者なら C はつらいだろう。
はっきりいって、プログラムを組んでみたいんだったら
スタンドアロンなアプリにこだわる必要はないと思うんで、
Java Applet などからはじめてもいいと思う。>>11
とゆーか、そもそも「人工言語」というものに慣れていないの
なら、簡単な HTML や JavaScript を書いてみることをすすめる。
初心者は、結果がすぐ目に見えるような言語を使うほうが
やりやすいと思う。


35 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 12:43
やっぱり最初はCだろう。C言語って、めちゃ簡単だもん。


36 名前: 厨房プログラマー 投稿日: 2000/11/15(水) 13:09
VC++使ってます。
デバッグの仕方というかコツがわかりません。
本とかサイトとかありませんか?


37 名前: 名無し 投稿日: 2000/11/15(水) 14:44
>>22
VBから。その後C++をやる。
Cの知識無くてもC++勉強できる入門書があるはず。
多分。
俺はbasicから入った。
Basic → Assembler(8bit, 16bit) → C → C++ → 有象無象
こんな感じ。

>>35
簡単ではないよ。
ちゃんとしたものを作ろうとしたら、リファレンス片手に作るし、
ある意味大変だよ。


38 名前: ( ゚Д゚) ゴルァ 投稿日: 2000/11/15(水) 14:57
俺もCは「難しい方」だと思う。
とはいっても簡単な言語なんかないから一日でぱっとわかるのない?
とか思われてるとそんなもんねえと言うしかない。

まー、hspかjavascriptあたりをやってれば概念が使いまわせるしシステム飛ばすこともないだろ。
VBは超初心者には歯ごたえあるがこれでもいいと思う。
ゲーム作りたいってんならVBかhspじゃねーかな。


39 名前: おれのばあい 投稿日: 2000/11/15(水) 14:58
N88BASIC -> QC -> TC -> MSC -> TCW -> ASM(色々) -> VC

スクリプト系は、HTML,JavaScript,perl,makefile..etc


40 名前: 37 投稿日: 2000/11/15(水) 16:54
そういえば、VBって言うのは、Visual Basicの略。
入門書は本屋のPC書籍のコーナーに行けばどう言うわけかいっぱいある。
簡単そうな本を適当に選んでもそう間違いはないと思う。

>>15
Borland C++ Compiler 5.5(バージョンアップしたらしいがよく知らん。)
インプライズのサイト行ってダウンロード又は雑誌を購入。
英語でも良ければ、
英語圏のサイトのソフト集めているところで探せば
幾つか見つかるのではないだろうか。


41 名前: 結城 投稿日: 2000/11/15(水) 17:25
これは、詳しい説明が要るかな。

>22
いろんな人のフォローはそれぞれに的確だよ。
ようは、38の言う「簡単な言語なんてない」、ってこと。一長一短。

どれか1個押さえておくと、他の言語もなんとなくわかるので、自分に
合いそうなのから挑戦してけばいいと思う。

俺の薦めたCは、「基本(入門書のレベル)だけなら」カンタンな言語。
複雑なのを作ろうとすれば、一気に面倒になる。
基本だけCで学んで、それからJAVAなりVBなりに行くのがオススメ
だと思ってたんだけど、他の人のオススメ方法でもOK。

初心者だと言語の特徴もまだ知らないだろうし、大ざっぱに説明してみる。
間違ってたら突っ込み頼む>ALL


42 名前: 結城 投稿日: 2000/11/15(水) 17:26
■Cの場合
・「ハロー、これがプログラムです」とかの表示(DOS窓で)
・適正体重の計算。 (「適正=(身長−110)×0.9」の計算)
・入力した数値に応じて表示を変える。

・そーゆー基本(+−×÷)を組み合わせた複雑な計算。
・それに追加した条件分岐や、文字表示。

とかのレベルまでなら簡単。いわゆる「入門書」のレベル。
それ以上になると、膨大なデータの管理がめっちゃ面倒になってくるし、
C以外の予備知識も必要になって、大変。

・長所:覚える量が少ない。
    構造がカンタン。(最初は)
    実行速度が速い。(本格的なソフトは、主にCで作られる)

・短所:複雑なものを作ろうとしたら、管理がめちゃ大変。
   :CだけではWindowsソフトは作れない。DOS窓以外で
    動作させるには、他の知識も必要。(Win32、DirectXなど)
    つまり、大変。



43 名前: 結城 投稿日: 2000/11/15(水) 17:27
■Java。
  昔ほど凄いものではなくなったが、そこそこ使える

長所:映像、音楽、ムービーを使うなら一番お手軽。
   長い関数名や一見メンドウっぽいプログラム構造にさえ耐えられれば、
   わかりやすく初心者向き。
   HPに乗せられる。
   けっこういろんなことが、手軽に出来る。

短所:遅い。死ぬほど遅い。
   クラスが面倒に感じる。(関数名がやたら長い)
   用途は主にHPとか家電。本格的なアプリは、実行速度の問題でムリ。



44 名前: 結城 投稿日: 2000/11/15(水) 17:27

■HTML
  ホームページ作成用。(これってプログラム言語だっけ? 別物なイメージ)
  似た部分があるので、マスターしておくとプログラムが理解しやすい。

長所:めちゃ簡単。(簡単なものから作っていくなら特に)
   HP作成という、結構使えるスキルが手に入る。
   成果が簡単にわかる。ネットを見ればわかるように、色々なデザインが可能。
   マスターしとくと、プログラムが理解しやすくなる。

短所:計算とか、自分で考えた機能の実行とか、プログラム本来の機能はないに等しい。
   ってゆーか、たぶんHTMLはプログラムじゃない。



45 名前: 結城 投稿日: 2000/11/15(水) 17:28
■VB (Visual Basic)
  すまん。実際には触ったことがない。風評で書くと、

長所:めちゃ簡単。とっつきやすい。
   Windows環境が簡単に作れる。(Cだとめちゃ大変)
短所:遅い。
   限界があるので、入門には良くても、いつか脱出しなくてはならない環境。

■VC++ (VisualC++)
  たぶん最初からこれに手を出すのはやめた方がいい。混乱する。
  けど、ある程度慣れてからなら、悪くない。
  本格的なWindowsソフトを作れる環境。(だよね?)

以上。長くてスマソ。


46 名前: 名無し様@ハァハァ 投稿日: 2000/11/15(水) 19:26
>>22 HSPはホント簡単。
Cとかよりも簡単。
ゲーム作るのには最適。動作も遅くはないし。


47 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 23:02
http://www.ff.iij4u.or.jp/~ahirusan/Java/patterns/patternIndex.html

デザインパターン
(俺もここで教えてもらった)
英語で構わないので、他にもないでしょうか?


48 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 23:13
>15

DOSプロンプトで
cd C:\jdk1.3\demo\applets\Animator\example1.html
c:\jdk1.3\bin\appletviewer example4.html
で動かない?

他のサンプルは動いたのかな?
example4.html
だけが動かないん?
ちなみにブラウザでそのファイルを開いても、
動かないよん(多分ブラウザのジャヴァ仮想マシンが
JAVA2に対応してないから)


49 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 23:14
>15

DOSプロンプトで
cd C:\jdk1.3\demo\applets\Animator\example1.html
c:\jdk1.3\bin\appletviewer example4.html
で動かない?

他のサンプルは動いたのかな?
example4.html
だけが動かないん?
ちなみにブラウザでそのファイルを開いても、
動かないよん(多分ブラウザのジャヴァ仮想マシンが
古いから?対応してないから)


50 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 23:17
間違えちゃった
cd c:\jdk1.3\demo\applets\Animator\
c:\jdk1.3\bin\appletviewer example4.html



51 名前: 超ウルトラ初心者22です 投稿日: 2000/11/15(水) 23:41
おぉ!! たった一昼夜でこんなに、
マジレスアドバイスありがとうございます。
感謝感謝です。

そうですか、やはり誰もがこれから勉強する!という
定番言語はないんですね。

こんなに親切に書いてくださったのだから、
まずは結城さんの書いて下さった説明をもとに、
皆さんが進めてくださったものに全部触れて行きたいと
思います。(これはいけないやりかたかな?)
もちろんちょっとづつかじるだけですけど。

実はオセロゲームを見つけて遊んでいるうちに、
どういう仕組み(プログラム)で動いてるんだろうと
好奇心の虫がムズムズしだしてきてしまいました。

http://www.bergersjo.com/Erik/othello.html

なんか、時計を分解するガキと同じノリで恥かしいのですが、
思い切って尋ねてホントよかったです。
アリガトウゴザイマシタ。


52 名前: au 投稿日: 2000/11/15(水) 23:54
>>47
ポートランド・パターン・リポジトリ(英語ッス)
http://c2.com/ppr/

米ヤフなら結構DesignPatternで検索引っかかるぞ?


53 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/15(水) 23:59
おーさんきゅ!
引っかからなかったのはスペル間違いかも(恥)


54 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 00:08
>51
どういう風に動いてるのか覗いてみたくなるってのは、
結構モチベーションとしてはあるよね

趣味でやるなら、
いろいろ触って自分が惚れたのを使うのがベターでわ?



55 名前: 母を訪ねて名無しさん千里 投稿日: 2000/11/16(木) 00:55
というかHSPってなんですか


56 名前: ( ゚Д゚) ゴルァ 投稿日: 2000/11/16(木) 01:03
>>40
BCCは日本語版でてる。
http://www.inprise.co.jp/cppbuilder/freecompiler/

>>51
そーゆーのがいいんだ。プログラムは。


57 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 01:05
56>
フリーソフトのスクリプト言語だよ。
HotSoupProcessorで検索すれ。

プログラムのことが何もわかんない人でも、これなら
"とりあえず"絵を表示したり音を鳴らしたりできるでしょ。

これがわかんないなら、プログラミングはあきらめたほうが
いいかもしれない。


58 名前: 57 投稿日: 2000/11/16(木) 01:07
>55 だね。ごめん


59 名前: 母を訪ねて名無しさん千里 投稿日: 2000/11/16(木) 01:27
なんだよー割と好きだったのにー

>>5
ちっちゃいまま入れちゃえば平気


60 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 01:37
中古でVC買おうと思うんすけど登録できなくても
使えますよね?


61 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 02:04
VB5とVC5はWINCOWS98でも使えますよね?


62 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 02:30
VC++でMFC Appwizard使うのは邪道ですか?


63 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 03:39
ドロップしたファイルから、
::ExtractIconでアイコンを取得したいのですが、
ショートカットだと、うまくいきません。
どうやるの?
C++BUILDER版だと初歩的過ぎて誰も答えてくれなかった・・・。
お願いしマース。


64 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 03:59
C言語でゲームの作り方解説しているところ知りませんか?


65 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 04:38
>>61
使えるけど、OS巻き込んでcrashされると鬱なのでお勧めできない。

>>62
別に。使いたければ使え。


66 名前: 63 投稿日: 2000/11/16(木) 06:08
ヘルプ眺めてたらわかったからもういいです。どうも。
ExtractAssociatedIconを使えばいいのですね。
こんなこともすぐわからないようじゃ。駄目駄目だね。
もっと精進しよっと。



67 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 07:10
入門書レベルは分かるんだけど
具体的にwindowsのソフトの作り方がわからないです。
フリーのCコンパイラじゃだめですか?



68 名前: >67 投稿日: 2000/11/16(木) 07:24
2チャンネラならBCC55で
http://mentai.2ch.net/test/read.cgi?bbs=prog&key=957341074
からスタート


69 名前: ( ・∀・)さん 投稿日: 2000/11/16(木) 08:08
Win2000やMeになったら9xで動いたアプリが動作しないって話聞くんですが
そういうものは結構頻繁に起きてるもんなんでしょーか?
原因なども教えてもらえるとありがたいです。


70 名前: >69 投稿日: 2000/11/16(木) 08:25
頻繁に起きます。
理由は、便利なソフトほどシステム深くを弄る為互換性に阻まれるという事ですね

また、MSがターゲットにしたソフトが出来るだけ動かないか遅く動くような仕掛
があって、その仕掛けのせいで巻き添えを食う場合もあります。



71 名前: 名無しさん 投稿日: 2000/11/16(木) 10:05
>>61
ネタか?

>>64
本買え。出版社の利益に貢献しろ。


72 名前: >68 投稿日: 2000/11/16(木) 10:07
2ちゃんねらーじゃなくても、
最近はBCC55からスタート。


73 名前: >69 投稿日: 2000/11/16(木) 10:16
板が違うのではないか?


74 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 10:24
>>69
バージョンアップをして儲ける為です。
それか互換を取れるように作ろうと思えば、出来なくもないのに
それをやらない怠惰なソフトハウスって事です。


75 名前: 67 投稿日: 2000/11/16(木) 10:26
サンキューです。
BCC55の関数リファレンスみたいなのはないでしょうか?
stdio.hで使えるような物しか分からずおてあげです。
また、フリーソフトなどを作る気があったら
C++Builder買った方がいいんでしょうか?
教えて君でスマソ。



76 名前: >75 投稿日: 2000/11/16(木) 10:35
C/C++言語辞典買え。
APIバイブル買え。
つかその前にstdio.hだけと言う状況を改善しろ。


77 名前: >>76 投稿日: 2000/11/16(木) 11:22
>stdio.hだけと言う状況を改善しろ。
warata!...

but me too...


78 名前: >67 投稿日: 2000/11/16(木) 11:54
ほんの少しでも買うつもりがあるなら、トライアル版で試せばよかろう
”トライアル版てどこにあるの?”という質問なら、本屋に行って
プログラム系の雑誌を探せ。

ところで、そのまえに68のソースコードを走らせて勉強してみたのか?


79 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 12:23
Cのことで質問です。

m1 m2 m3 m4 m5 m6 .....

とスペースで区切りを付けられた数のデータがあるんですけど、
例えば6番目のデータ m6 だけを取り出したいときなど、i 番目の
データを取り出すにはどういう風に書けばいいのでしょうか?
ご教授お願いします。



80 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 12:39
>>79
awk



81 名前: >79 投稿日: 2000/11/16(木) 12:40
int i;
int dt;
int n=6;
for(i=1;i<n;i++) fscanf(stdin,"%d",&dt);
fscanf(stdin,"%d",&dt);



82 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 12:42
>>79
strtok


83 名前: 79 投稿日: 2000/11/16(木) 12:46
>>80-82さん
さっそくの返答ありがとうございます。
本で調べてやってみます。


84 名前: 79 投稿日: 2000/11/16(木) 12:52
すません、実はC++で書いてるんですが、C++ならもっと簡単に
出来ますか?
C++のリファレンスとか読んでても、使えそうなのがないような
気がしまして、Cとして質問したんですけど。


85 名前: マジレスさん 投稿日: 2000/11/16(木) 14:24
こんなのじゃダメ?
82番さんと同じくstrtok使うやつ
もっといい方法あると思うけどおもいつかない。
CStringのメンバにも使えそうな関数無いしね。

#include<iostream.h>
#include<string.h>
#include<stdlib.h>

int GetToken( char* msg, int offs )
{
int cnt = 0;
int ans = -1;
char* ret = " \n"; // 区切り文字
char* tok = NULL;

// strtokで元データが変更されるのを防ぐ為
int length = strlen( msg ) + 1;
char* buff = (char*)malloc( length );

if( buff )
{
strncpy( buff, msg, length );

ans = atoi( strtok( buff, ret ) );
while( offs > cnt++ )
{
tok = strtok( NULL, ret );
ans = (!tok ? -1 : atoi(tok)); // tokがNULLなら-1
};

free( buff );
}

return( ans );
}


void main()
{
char* msg="10 100 1000 10000";

cout << GetToken(msg, 0) << endl;
cout << GetToken(msg, 1) << endl;
cout << GetToken(msg, 2) << endl;
cout << GetToken(msg, 3) << endl;
cout << GetToken(msg, 4) << endl; // 範囲外 -1
}


86 名前: 82 投稿日: 2000/11/16(木) 14:48
>>85
>CStringのメンバにも使えそうな関数無いしね。
こんな感じ?
前に作ったものをちょっと手直ししてみたんだけど。

CString GetToken(CString& line, const char* delims)
{
   CString   token;
   token = line.SpanExcluding(delims);
   line.Delete(0, token.GetLength());
   line.Delete(0, 1);
   return token;
}



87 名前: 82 投稿日: 2000/11/16(木) 14:54
>>86
> line.Delete(0, token.GetLength());
> line.Delete(0, 1);
何だろう、これ?
line.Delete(0, token.GetLength() + 1);
じゃ、何かまずいのかな?
自分でやったことながら、何でこうしたのかよくわからん。


88 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/16(木) 15:53
>>85さん
出来ました!めっちゃ感激です。ありがとうございます。
感謝感激。
2chやっててこれほど感謝したのは初めてです。

>>82さん
そちらも試してみます。ありがとうございます!


89 名前: 85 投稿日: 2000/11/16(木) 16:32
>87
試しましたが、元データが変更される点を除いて同様の動作をしました。
SpanExcludingって使ったことなかったので・・・私の勉強不足でした。
ありがとうございます。m(__)m

>88
少しでもお役に立てて良かったです。


90 名前: 82 投稿日: 2000/11/16(木) 17:32
std::string版もあるでよ。

#include <string>
#include <algorithm>
using namespace std;

string GetToken(string& line, const char* delims)
{
   string ret;

   string::size_type index = line.find_first_of(delims);
   if(index == string::npos){
      ret = line;
      line = "";
   }else{
      ret = line.substr(0, index);
      line = line.substr(index + 1);
   }
   return ret;
}

string GetToken(string& line, char delim)
{
   string ret;

   string::size_type index = line.find(delim);
   if(index == string::npos){
      ret = line;
      line = "";
   }else{
      ret = line.substr(0, index);
      line = line.substr(index + 1);
   }
   return ret;
}


91 名前: 79 投稿日: 2000/11/16(木) 21:37
82さんと85さんのお陰でプログラムを作ることが出来ました。
楕円ElGamal暗号を試作してみました。
助言がなければもっとしょうもないプログラムを書くことに
なったと思います。

本当にありがとうございました。ひじょーに感謝しております。


92 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 00:22
誰か>>24の質問に答えてやってくれ。
っていうか俺も良くわからんので知りたい。



93 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 00:41
>>24
>MFCに対してSDKでプログラミングって良く聞くんですが、
>あれってどうやってプログラミングするんですか?
>DirectX SDKみたいに何かインストールしなきゃなんないんでしょうか?
>俺が今持ってるのはVC6です。

Windowsプログラム作成に必要なツールやファイルをまとめてSDKといいます。
正確にどの範囲をSDKというのかは私も知りません。
MFCを使用してもSDKは使用しているので、本来はMFCの対の言葉として
SDKを使うのは正確ではないと思いますが、一部ではこういう用法が
定着しているようです。

VC6なら、メニューの「ファイル」→「新規作成」
→「プロジェクト」→「Win 32Application」
でプロジェクトを作成すれば、いわゆる「SDK」で
開発できます。
特に何かインストールしなくてもOKです。

書籍はアスキーの「プログラミングWindows」が、バイブルと
されています。(でも千数百ページの本なので初心者には難しい)
Webだと「猫でもわかる......」が評判がいいようです。
簡単に検索できるので、自分で探してください。



94 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 00:55
プログラムとスクリプトって意味違うんですか?


95 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 01:01
>>94
http://www.ascii.co.jp/ghelp/62/006280.html
http://www.ascii.co.jp/ghelp/17/001765.html

すこしは自分で調べてねヽ( ´_ゝ`)ノ


96 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 01:25
>95
ありがとうございます。&ごめんなさい


97 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 01:54
C++ではnewやdeleteも演算子なんだそうですが
deleteは値としては何を返す演算子なんですか?



98 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 01:58
voidを返しますつーか、返しませんつーか…


99 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 02:05
オーバーロードのためだけに演算子に分類されているような気もする‥



100 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 02:10
C++設計時にnew()とかdelete()とかっていう選択肢は無かったのかなぁ。


101 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 02:12
たしかに構文を奇怪にしたかったとしか思えん‥


102 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 02:28
コンストラクタの構文もけっこうキモイ‥


103 名前: へろへろ 投稿日: 2000/11/17(金) 02:47
名無しさんへ
Q2を使ったエロサイトでかってに電話をつながせちゃう実行ファイル
(exe)作れますか?
作れるのならばお願いできないでしょうか〜
それとも情報もってればください
それなりにはずみます。。。
お願いしますm(_"_)m



104 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 02:55
(exe)←これは顔文字ですか? みっひーちゃんみたいでかわいいですね(藁


105 名前: へろへろ 投稿日: 2000/11/17(金) 02:59
むりっすかぁ


106 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 03:02
103はメルアドも書いているし嫌だ。
逝ってよし



107 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 03:12
可能だとしても嫌だ。
ネタでも嫌だ。本気ならもっと嫌だ。


108 名前: 結城 投稿日: 2000/11/17(金) 03:41
>103
それ犯罪。


109 名前: 107 投稿日: 2000/11/17(金) 04:37
むしろ、名無しさんへと書いてる時点でまずいだろなんか色々と。


110 名前: 24 投稿日: 2000/11/17(金) 06:19
>93
丁寧な解説ありがとう。おかげですっきりしました。
「猫でもわかるプログラミング」見てきました。下手な解説本よりずっといいですね。

92にも感謝です。




111 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 10:21
『「猫でもわかるプログラミング」ってMFCが弱くねーか』なんて書いてみる



112 名前: >111 投稿日: 2000/11/17(金) 12:44
「別にいいじゃねーかよ。ネットで全部やろうなんて思うなよ。」なんて書いてみる。


113 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 15:22
m(exe)m





114 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 15:24
      ∧ ∧
〜′ ̄ ̄( exe)
 UU ̄ ̄ U U 


115 名前: 名無しさんお腹いっぱい。 投稿日: 2000/11/17(金) 15:52
CPaintDC と CDC を 型変換したいのですけど、どーすれば
いーのでしょうか?


116 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 17:08
http://piza.2ch.net/test/read.cgi?bbs=mona&key=974445349&to=3




117 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 18:24
質問の内容が、ちょっと良くワカンナイんだけど・・・こういう事?
CDC dc;
CPaintDC cpdc(this);
cpdc.CreateCompatibleDC( &dc );
/*互換性のあるメモリデバイスコンテキスト作成*/




118 名前: NTTGM 投稿日: 2000/11/17(金) 19:24
http://www8.tok2.com/home/NttWkk/


119 名前: 名無しさん@七しさん 投稿日: 2000/11/17(金) 21:44
      ∧ ∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜′ ̄ ̄( ゚∀゚)<
 UU ̄ ̄ U U |
          |
           \_____________


120 名前: 名無しさん 投稿日: 2000/11/17(金) 21:45
      ∧ ∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜′ ̄ ̄(  ̄Д ̄)<
 UU ̄ ̄ U U |
           \_____________


121 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 21:47
      ∧  ∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜′ ̄ ̄(  ̄ー ̄)<
 UU ̄ ̄ U  U |
           \_____________


122 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 21:48
      ∧ ∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜′ ̄ ̄( ▼Д▼)<
 UU ̄ ̄ U U |
           \_____________


123 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 21:50
      ∧ ∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜′ ̄ 〇Д〇)<
 UU ̄ ̄
           \_____________


124 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 21:52
      ∧  ∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜′ ̄ ̄( 0□0)<
 UU ̄ ̄ U  U  |
            \_____________


125 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 21:54
      ∧ ∧
〜′ ̄ ̄( *.*)
 UU ̄ ̄ U U


126 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/17(金) 21:55
      ∧ ∧
〜′ ̄ ̄( ДoД)
 UU ̄ ̄ U U


127 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 00:01
クライアントのPCのブラウザの中で、サーバーにある
ExcelとかWordのファイルを動かしたいんだけど、
どうすればいいの?

サーバにある良く使うファイルはHTMLでリンク集をつくって、
ブラウザで使えれば便利だと思うので


128 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 00:25
>>127
ExcelやWordのファイルを動かす?

IEの中に埋め込み表示したいという事を言ってるのかもしれんが、いずれ
にせよクライアント側にExcel, Wordがインストールされてなきゃ開き
ようがないんだが。

クライアント側にちゃんとインストールされてるなら、URLクリックすりゃ
いいだけの話。


129 名前: つーか 投稿日: 2000/11/18(土) 00:26
板違いだろゴルァ!


130 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 02:03
Java Beansって何ですか?


131 名前: 名無しのエリー 投稿日: 2000/11/18(土) 02:10
>>130
コーヒー豆


132 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 02:53
BCBのパッケージみたいなもん


133 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 02:58
BCBって、ドラムがボーカルのテクノバンドだっけ?


134 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 03:25
それはこかこーらぼとらーず!!


135 名前: 投稿日: 2000/11/18(土) 06:43
ランタイムってなんですか?
DLLのことですか?


136 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 06:47
「runtime library」。直訳すると「実行時(に必要になる)ライブラリ」。
まぁDLLの事と言ってもあながち間違いでもないけど。


137 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 07:13
パ…パスカルとターボパスカルは…どう違うんでしょうか…

DELPHIの参考として本を買う場合、ターボに関するほうを買うべき
でしょうか?


138 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 10:31
switch文の範囲内で int i=1; のように宣言と初期化を同時にしようとすると
コンパイルできませんが何か理由があるんでしょうか


139 名前: 138 投稿日: 2000/11/18(土) 10:37
ヘルプに理由書いてありましたm(__)m


140 名前: >137 投稿日: 2000/11/18(土) 13:48
http://www.ascii.co.jp/ghelp/12/001251.html

よって、Turbo Pascal。
つか、Delphiの参考書買え。


141 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 14:58
VBでクラスを使ったら、標準モジュールと比べて実効速度が1/5位に落ちるって知り合いが行ってるんですけど本当ですか?


142 名前: >138 投稿日: 2000/11/18(土) 16:38
ブロックの先頭でしか宣言できないから。caseをブロックにすれば出来る。
switch(xxx){
 case yyy:{
  int i=1;
  ...
 }
}


143 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 18:16
>>141
そんなのは、自分で実験してみればいいじゃん。


144 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/18(土) 21:06
>>141
作るクラスに依るよ。
速度重視の組込みクラスはC/C++で記述されているね。
表形式出力なんか、VBで組むより、AccessのVBA組込み
クラスを使ったほうが100倍くらい速い!



145 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 01:43
enum ってどうゆう時に使うんですか?
使う利点は、何ですか?

今まで一回も使ったことないダメプログラマでした。


146 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 01:47
>145
配列のキーが数字じゃなくて文字列なほうが
いいときって、結構ない?



147 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 01:56
配列のインデックスが数字じゃなくてシンボルの方が
いいときなら、結構ある。


148 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 02:08
無理するなよ。


149 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 02:55
>145
クラス内でconst変数を宣言したいとき。


150 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 18:26
テキストボックス1に、テキストボックス2で入力(ボタンを押して)した文章を次々改行して表示
させるためにはどうすればよいですか?

Text1.Text = vbCrLf & Text2.Text

とすると、最初に入力した、文字は下の方に表示されてしまいます。
そうじゃなく、新しく入力した文字は、どんどん下の方に表示され、最初に
入力した文字は、上の方に表示させたいのですが、誰か教えて下さい。





151 名前: 150です 投稿日: 2000/11/19(日) 18:27
すいません、VB6.0です。



152 名前: 名無しさんi486 投稿日: 2000/11/19(日) 18:31
Text1.Text = Text2.Text & vbCrLf & Text1.Text
これでどうですか?


153 名前: 名無しさんi486 投稿日: 2000/11/19(日) 18:33
Text1.Text = Text1.Text & vbCrLf &  Text2.Text
ごめん、こうですか?


154 名前: 150です 投稿日: 2000/11/19(日) 21:08
ありがとうございました。


155 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 23:29
可変個の引数を取る関数とかに出てくる
スタックってどうゆう意味ですか?。


156 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 23:36
言語は何>155


157 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 23:47
>156
Cです。


158 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 23:50
処理系の実装方法にもよりますが、関数内で使用する自動変数や
関数からの戻り番地が書きこまれる、FILOバッファのことです。
アセンブラのお勉強をすればすぐに理解できると思います。



159 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/19(日) 23:55
>158
教えて下さってどうもありがとうございました。


160 名前: 名無しさん@お腹いっぱい 投稿日: 2000/11/21(火) 01:39
VC++のライブラリとBCBのライブラリを比べた場合に、どちらが優れているのでしょうか。



161 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/21(火) 01:57
>>160
MFCとVCL?
VCLじゃない?



162 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/21(火) 04:31
K&Rのアンサーブックの値段はいくらですか?



163 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/21(火) 09:02
VC++を今から覚えたいです。
AppWizardを使うのと「猫でもわかる・・・」にあるような
やり方とどちらがいいでしょうか?
後者の方が経験的に馴染みやすそうです。



164 名前: MY 投稿日: 2000/11/21(火) 15:36
MainFrm.cpp が 大きくなったので、2つに分けました。
新たにメンバ関数を追加するときは、MainFrm2.cpp に追加したいのに
MainFrm.cpp に 追加します。ワークスペースの関連付けの
変更の仕方を知っている方教えてください。


165 名前: 無名選手@投げたらアカん! 投稿日: 2000/11/21(火) 17:01
わからないのでここに書きました
違ってたらごめんなさい
バイナリを使って改造したいのですが16進法の漢字と文字がわかりません
どうすればいいのでしょうか?


166 名前: >>165 投稿日: 2000/11/21(火) 17:58
バイナリを使って改造、だけじゃ何がなんだかわからんのですが。
何をするプログラムでどのような処理をさせたいのか具体的に書いてください。
当方テレパスではりませんゆえ。


167 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/21(火) 20:54
165ではないが‥

Q. バイナリエディタを使って文字列を変更する改造をしたいのですが
文字コードを知らないためどんな値を入力すればいいのかわかりません
文字コードを16進数で教えてくれるようなツールはありませんか?

A. Windowsについている文字コード表というソフトを使って
一文字づつ文字コードを調べるか、文字列を直接入力できる
バイナリエディタを使いましょう。

当方、一般向けパッケージソフトのユーザーサポート経験アリですので
このくらいなら理解できます。


168 名前: 166 投稿日: 2000/11/21(火) 23:12
テレパシストやん…


169 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/21(火) 23:43
どっかの板の「EXCELで1−2=0」スレッドを思い出したよ。
わかっちゃうひとって居るんだねぇ(素直に感心)。


170 名前: 無名選手@投げたらアカん! 投稿日: 2000/11/22(水) 02:20
167さんどうもありがとうございます
これで改造が少しはかどると思います


171 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/22(水) 02:31
>165
いやいや、どういたしまして

>168
いちど一般向けのユーザーサポート担当やってみそ。
165さんのは、まだまだぜんぜんわかりやすいほうだよ。



172 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/22(水) 02:37
>>166
いや、一応俺もこれぐらいならテレパスできるぞ。
ユーザーサポートじゃないんで放置したけど。(藁
ただ、>>169のはさっぱりだったけどな。
(確か、あれの2あたりで答えたと思った)


173 名前: 166@ESP無し 投稿日: 2000/11/22(水) 03:01
うん、俺はこうかな?という予測はできたが確信なくて答えは書けなかったよ。
167のQが最低限の質問内容だと考えるとな。
あと説明省き過ぎで少しむかついてた。いかんいかん


174 名前: 山本工兵 投稿日: 2000/11/22(水) 06:35
安くVC++5を買ってしまいました。
しかしプログラミング知識ありません、。
いろいろ読むとC++の前にCを学べとよくありますがいやです。
いきなりVC++5を使うのに良い書籍がありましたら教えてくださいませ。



175 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/22(水) 08:25
>いろいろ読むとC++の前にCを学べとよくありますがいやです。
いやですって、あーた…


176 名前: 172 投稿日: 2000/11/22(水) 12:19
>>173
>あと説明省き過ぎで少しむかついてた。
ああ、それは俺にも確かにある。
やっぱり、最低>>167ぐらいは書いてくれないと。


177 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/22(水) 12:44
ホントの初心者が167くらい書くのはかなりたいへんなんだよ
やりたいことがわかっててもうまく説明できない。
バイナリエディタ、文字列、文字コード
このあたりの単語を知らないんだから‥
初心者はリクツよりもまず単語を勉強するべきだな。
そうすれば上手な質問だってできるというものだ。


178 名前: 172 投稿日: 2000/11/23(木) 00:27
わかってる…わかってんだ難しいのは…
だけど頑張ってなんとか説明してくれてる初心者に比べると
努力のかけらも見えないのは俺としては…頃したくなることも蟻


179 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/23(木) 01:57
質問です(;´`)
独学でC++をやっていますが、classとstructの違いが良くわかりません。
structでも同じことが出来ると思うのですが…
classでなければいけないという時はどんな時ですか?


180 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/23(木) 02:42
VisualC++6で、WINAPIのみを使って画面にBitMapを
表示させたいのですが、分からなくて困っています。
ウィンドウの作成はできていますので、あとは
画像をリソースにして、WM_PAINTのケース
のなかでLoadImageで読み込めばいいと思うのですが、
そのあたりが良く分かりません。
具体的には、LoadImage(HINSTANCE,LPCSTR);の
LPCSTRという部分の意味が良く分からないので
何を書けばいいのか分からないということが一点目。
二点目は、挿入→リソース→BitMap→インポートで
リソースファイルと、resourse.hが作られたので、
そのヘッダファイルをインクルードして
コンパイルしたところ、ファイルをインクルードできません
というエラーが出てしまう。 ということです。
図々しいと思いますが、
今、真っ白なウィンドウを表示するだけの
ソースがあったとして、リソースを挿入するところから、
WM_PAINTのなかに何をどう書いたらいいのかも含めて、
全手順をまるまる教えていただければ一番うれしいです。
ハンドル名とかは適当で結構です。よろしくお願いします。


181 名前: 172 投稿日: 2000/11/23(木) 04:10
>>179
お答えします。
両者は全く等価であり、差違は一切ありません。
ただ、
{
   int a;
   void func();
};
と言うクラスを書いた場合、structならば
{
public:
   int a;
   void func();
};
と解釈されるが、classだと
{
private:
   int a;
   void func();
};
と解釈される点のみ異なります。

>>178
172は、俺です。間違えないように。


182 名前: 姐さん 投稿日: 2000/11/23(木) 04:15
>180
typedef const char *LPCSTR;
と、いうことだ。
ヘッダファイルに記述がなかったかい?

あと、BMP表示の仕方はこれだよ。
http://www.iacnet.ne.jp/~yasutaka/c_lang/sdk/sdk_26.htm



183 名前: 姐さん 投稿日: 2000/11/23(木) 04:22
ごめんよ。
正確には
typedef const CHAR FAR * LPCSTR;
だったね。



184 名前: ×172○173=178=166 投稿日: 2000/11/23(木) 05:40
…スマソ。逝く。


185 名前: 180 投稿日: 2000/11/23(木) 14:59
180です。ありがとうございました。
教えていただいたHPは大変参考になりました。

LoadBitmapのLPSCRの部分には、
リソースを作ったときに自動的に作られたresouce.h
に書かれたIDを書けばいいんですよね。
で、#include "resource.h"と追加して
コンパイルしたんですが、やはり、
「ファイルをインクルードできません」
というエラーが出てしまいます。
リソーススクリプトもヘッダファイルも
プロジェクトに追加してあります。
そもそも、ヘッダファイルというものが良く分からないんです。
何か、書きかえる必要とかがあるのでしょうか。

#include "resource.h" を消してビルドすると、
LoadBitmapの部分で「定義されていない識別子です」
というエラーが一つでるだけなので、他は問題無いと思うんですが。
もう一度お願いします。長文で流れちゃってすいません。



186 名前: 姐さん 投稿日: 2000/11/23(木) 19:07
>185
#includeに関する説明はこのへんでいいだろうね。
http://www.microsoft.com/JAPAN/developer/library/vccore/_predir_the_.23.include_directive.htm
http://www.microsoft.com/JAPAN/developer/library/vclang/_clang_including_quoted_filenames.htm
同じものがVC++のヘルプにあると思うから調べてごらん。

おそらく…というかほぼ間違いなくpathの指定が間違ってるんだろうね。
includeしているファイルのフォルダとresouce.hを置いたフォルダが別の場合、例えば

#include "include\resouce.h"

といった風に場所を指定しないといけないんだよ。
よくわからなければすべてのソースファイルを同じフォルダに突っ込めばいいだろうね。

ところで、どんな入門書を読んだのかすごく興味があるんだけど
良ければ教えてくれないかい?


187 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/23(木) 19:19
unsigned char pat[32][32][3];
このような配列に格納された縦横32×32ドット分のRGB値がるのですが
これを画面に表示するにはどうすればよいのでしょうか?
setpixelを使う方法はやってみたのですが、この方法だと
配列が(絵のサイズが)じゅうぶん小さいうちは何とかなるのですが
大きくなると時間がとてもかかってしまいます。
OSはwin98です。


188 名前: 姐さん 投稿日: 2000/11/23(木) 21:11
>187
構造をDIBにすればあとはそれを表示するAPIはいろいろあるよ。

DIBの構造はこのへんを参考にしてくれ。
http://www.vector.co.jp/soft/data/art/se027618.html

Web上にもあったと思うけど忘れちまった。
自分で探しておくれ。



189 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/23(木) 23:08
DELPHI入門本程度理解できるんですが今の状態から
VC++やったら理解できますかね?


190 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/23(木) 23:28
大丈夫。子供の科学って雑誌にもVCの記事は書かれてる
くらいだから。


191 名前: 179 投稿日: 2000/11/24(金) 00:02
>181
ありがとうございます。
そのくらいしか違いがないのならclassキーワードって必要ないような気も…


192 名前: 180 投稿日: 2000/11/24(金) 00:31
姐さんさん、ありがとうございます。
大変助かりました。おかげさまで解決しました。

僕も、きっと場所が見つからないんだろうなと思って
フォルダをいろいろ移してみたりはしていたんです。
が、なんとも恥ずかしいんですが、ワークスペースウィンドウ
のなかで移動していただけで、実際のファイルの場所を
変えていなかったんです。
プロジェクトとは全く関係無い場所に
ソースファイルだけをまとめたフォルダを作ってあって、
その中にソースを入れてあったのが原因でした。

>ところで、どんな入門書を読んだのかすごく興味があるんだけど

参考にしているのは、
ソフトバンク「新VisualC++6.0入門」林晴比古
のビギナー編とシニア編。
同じく「DirectXグラフィックプログラミング」山崎由喜憲
です。
しかし、こちらの質問はプラスとマイナス、
どちらの意味と受け止めればいいのでしょう。。。。
でも、何にしろありがとうございました。


193 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 01:22
>>191
classを使うと文法的にクラスの記述が支援される。
コンストラクタ・デストラクタが自動的に呼ばれるし。
書きやすさというのは重要かと。その点C++は・・・


194 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 11:46
BCCでもWindowsのアプリは作れますか?
APIとかいうの使うんですか?


195 名前: >194 投稿日: 2000/11/24(金) 13:54
作れます。


196 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 15:39
つーかDOSのバッチファイルの質問はありですか?


197 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 15:50
レス無し氏のう。。。。。


198 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 16:03
>>196 はいはいありなんじゃないですか。おれも知らんけど。
この板は人すくないんだから、10分かそこらで氏ぬなよ。
で、バッチファイルの何が聞きたいの? 参考までに、ここは結構役に立つよ:
ttp://www.nifty.ne.jp/forum/fpcu/dosvcmd/index.htm


199 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 16:11
そこの廃れ掲示板にも一応質問書いといた。
でもその直前の質問も放置プレイ状態なので
多分しばらくレスつかないだろな。。。。。

っと言う事でここでも質問して見ます。
「カレントドライブを、実行するバッチがある場所にするいい方法は
無いでしょうか?」
どうでしょう? お願いします。


200 名前: >194 投稿日: 2000/11/24(金) 17:03
というかBCC55の事なら Windowsアプリしか作れない


201 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 17:07
意味不明だが、、、
>バッチファイルで、ドライブの移動だとすれば、
d:

>バッチファイルで、ディレクトリィの移動だとすれば、
cd \work\prj01\src

win側でやるなら、右クリックで、プロパティをいじればー


202 名前: >199 投稿日: 2000/11/24(金) 17:07
バッチだけでは無理かもしれませんね。
何か実行ファイル(exe)を作るしかないかも。というか作れ!
Cならargv[0]から引張ってきて セットカレントドライブするだけだろう


203 名前: 199です 投稿日: 2000/11/24(金) 17:26
いやっ実は複数台のPCで同じDOSバッチを
実行させる必要があったんですよ。
そのバッチ内のファイルコピーで、
・コピー元が変動する(ワークグループが変わる為)
・コピー先は固定
という部分があって、今はVBScriptでレジストリーから
ワークグループを取得してDOSバッチにパラメータ渡ししてる。

どーせならDOSバッチだけでやれないものかと、
ダメかなやっぱし。。。。。


204 名前: 201 投稿日: 2000/11/24(金) 17:26
そーゆー意味??
でも意味不明だなー。
バッチファイルが実行できるとゆーことは、パスが通っているか
もしくは、そのバッチファイルがカレントにあるってことでしょ。
後者の場合は、cdする意味がない。。。
前者の場合は、パスを通して、バッチファイルを置いた人が1番
解っているんだから、、、
c:
cd \bat
なんてバッチファイルを作ればいいように思うのだけど、、ダメ?


205 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 17:28
>>199
>「カレントドライブを、実行するバッチがある場所にするいい方法は無いでしょうか?」
もしかして
c:\bin\hoge.batを
c:\work\で実行させたいって事?



206 名前: 201 投稿日: 2000/11/24(金) 17:38
>>204>>202 を 見て書いたものね。

>>203 を 読んで、、、
やっぱ意味不明。。。
ネットワーク上のディレクトリにアクセスしたいって事?
取り敢えず、WIN95系なら、ワークグループ関係なしに
PC名でアクセスできると思うよ。


207 名前: >199 投稿日: 2000/11/24(金) 17:55
それぞれのPCで実行するなら、コピー元を取得する意味がないんじゃないの?



208 名前: 199です 投稿日: 2000/11/24(金) 18:08
すいませんホント説明が足りなくて。。。。

例えば
a.txtをC:\workspaceにコピーしたい
--------------------------------------------
echo %1
copy \\%1\a.txt "C:\workspace"
(%1=パラメータから渡されたワークグループ名)
--------------------------------------------
を、
--------------------------------------------
copy a.txt "C:\workspace"
--------------------------------------------
にして
a.txtがある場所にDOSバッチがあり、
そのDOSバッチのある場所をカレントドライブに
指定する方法がないかと思ってるんですけど。。。。。



209 名前: 199です 投稿日: 2000/11/24(金) 18:13
>>207
共通DOSバッチファイルを数十箇所にFTP転送してる関係で
同一記述じゃないとPC(ワークグループ)毎に変更しないと
いけないからなんです(泣


210 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 18:19
説明ヘタだな〜と思うのオレだけ?
まだわかんない。そのバッチファイルは誰が実行すんの?


211 名前: 199です 投稿日: 2000/11/24(金) 18:27
>>210
いやっ自分でも思います。

で、バッチ実行はPC側で固定名自動実行ッス。


212 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 18:33
>そのDOSバッチのある場所をカレントドライブに
>指定する方法がないかと思ってるんですけど。。。。。

バッチを実行した時点でカレントになるハズですが。

「C:\workspace」ってゆーのは、そのPCの「C:\workspace」って
事ですか?ならば、「・コピー先は固定」と背反します。
そーでなく、実行者のPCの「C:\workspace」ならば、
「\\(実行者のPC)\C\workspace」と書かなくてはいけないでしょう




213 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 18:35
バッチって、普通に起動したらbatがあるフォルダが
カレントになるもんじゃないの?


214 名前: 213 投稿日: 2000/11/24(金) 18:36
って、かぶっちゃった。


215 名前: 199です 投稿日: 2000/11/24(金) 19:03
きゃああああああああああああああああああああああ!!!!!!
今気が付きました!!!!!!!!
>>212
>バッチを実行した時点でカレントになるハズですが。
と言うので気がついたのですが、
ドライブの割当のないネットワーク名は
カレントにならないと言う事みたいですね。。。。
と言う事は数100台のPCにドライブ指定の設定をしないと
DOSバッチだけじゃ無理という事か(泣

ホントお騒がせしました。
レスして下さったみなさんありがとうございました。


216 名前: 199です 投稿日: 2000/11/24(金) 19:05
それにしても説明下手。明日氏のう。


217 名前: >199 投稿日: 2000/11/24(金) 19:08
>ドライブの割当のないネットワーク名は
>カレントにならないと言う事みたいですね。。。。

たぶん、ちがう・・・


218 名前: 199です 投稿日: 2000/11/24(金) 19:11
えっ 違うの?
検証したらダメだったよ?


219 名前: 217 投稿日: 2000/11/24(金) 19:16
バッチファイルの内容を↓のよーにして実験したら、
a.bat自体を (PC名)の(共有化してあるフォルダ)に移せたよ。

copy .\a.bat \\(PC名)\(共有化してあるフォルダ)\.




220 名前: 199です 投稿日: 2000/11/24(金) 19:30
ネットワーク コンピュータ
|
+-PCserver1(ネットワーク名)
|
+-temp(作業場所)

tempにファイルを置いて実験したらダメでした(泣


221 名前: 199です 投稿日: 2000/11/24(金) 19:32
あっ階層が変だ!

tempって\\PCserver1\temp って事です。


222 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 19:55
subst かなんかでドライブ割り当てられなかったっけ?


223 名前: 199です 投稿日: 2000/11/24(金) 20:17
あーっ東風荘でラスくらっちゃったよ(涙

で!
substでいけますか?


224 名前: 199です 投稿日: 2000/11/24(金) 20:28
あ〜substダメでした残念です。




225 名前: >199 投稿日: 2000/11/24(金) 20:28
まだできなの?>119
もう家に帰ってきちゃったよ。
(家内LANしてないからテストできない)

質問していい?
“\\PCserver1\temp”は、コピー元だよね。
コピー先のネットワーク上の絶対パスは?
それとその絶対パスは、共有フォルダになって、
フルアクセス可能になっている?


226 名前: 199です 投稿日: 2000/11/24(金) 20:59
>>225
家に帰ってまでありがとうございます。

で、絶対パスでフルアクセスです。
ローカルPCでのDOSバッチ実行と考えて下さい。
よってアクセス権はすべてフルです。

要するに“\\PCserver1\temp”までは遠隔から
データとDOSバッチが転送されて、
個々のPCがローカルでそれぞれそこから
DOSバッチの起動をかける(自動で)という事です。

遠隔の一箇所でDOS記述を作成・転送し
複数あるネットワーク体系で汎用的に使える
記述の仕方が知りたいのです。



227 名前: 199です 投稿日: 2000/11/24(金) 21:00
またなんか説明が悪いような。。。やっぱ明日逝こう。


228 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 21:06
error message は? > 199


229 名前: 199です 投稿日: 2000/11/24(金) 21:54
>>228
「ファイルが見つかりません。
0個のファイルがコピーされました。」
です。


230 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 21:56
もう1回、コピー元とコピー先の構成をきちんと書いてみ。



231 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 21:57
そのメッセージはね、コピー先がなくてもでたよ




232 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 22:58
DOSで動くJAVAありませんか?初学者なので重たい
GUIは必要無いのですが・・・


233 名前: >232 投稿日: 2000/11/24(金) 23:42
JDK2 java1.03?


234 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/24(金) 23:54
>>233
DOS用なんてあったっけ?


235 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 00:32
プログラミング初心者ですがC++勉強中です。
C++でWin用の簡単なツールを開発するには開発環境は
どういったものがよいでしょうか?



236 名前: >235 投稿日: 2000/11/25(土) 00:47
お手軽に行きたいならBCBを推薦する。
強気で行くならVC++もよし‥
本線を外れたいならCWなんてどだ?


237 名前: JAVAはしらん 投稿日: 2000/11/25(土) 00:55
jdk1.03\bin

>javac hello.java

hello.class が出来る

>java hello.class

Hello JAVA world!

なんて出る。(ホント?)


238 名前: 235 投稿日: 2000/11/25(土) 01:02
>236
レスありがとうございます。

VC++は持ってるのですがDOS画面のは
お手軽に作れるのですが...
BCBっていうのは正式名称はなんでしょうか?




239 名前: ウルトラ初心者 投稿日: 2000/11/25(土) 01:09
Windows+VCで他のプロセスのメモリを読み書きするにはどの様な手段を取ったら宜しいのでしょうか。


240 名前: >239 投稿日: 2000/11/25(土) 01:18
ホントにウルトラ初心者ですか?


241 名前: 232 投稿日: 2000/11/25(土) 01:29
DOS窓じゃなくて本当のDOSなのですが。
リアルモードで動く物。やはりプロテクトモードでなければ
駄目でしょうか?

コンソール入出力などできればなお良いのですが。
やはりJINIでCONIOを制御する外部ルーチン呼ばないと
駄目ですか?



242 名前: 237 投稿日: 2000/11/25(土) 01:31
実際やってみた

×>java hello.class
○>java hello.class



243 名前: ウルトラ初心者 投稿日: 2000/11/25(土) 01:47
>>240 自分は結構な知識が無いと出来ないと思ってるんですが、
自称プログラミング初心者が出来てるので…出来ない自分はやっぱり
ウルトラ初心者でしょう;


244 名前: 236>238 投稿日: 2000/11/25(土) 01:53
BCBは略称。 Borland C++ Builder です。
ウィンドウの設計はVB的な手軽さでできます。
ネイティブなC++コンパイラですからそれなりにパワフルです。
16bitアプリは作れませんが、DOS窓などで動く32bit
コンソールアプリは作れます。
詳細はこちらで → http://www.inprise.co.jp/cppbuilder/


245 名前: 238 投稿日: 2000/11/25(土) 02:02
>244

親切にありがとうございます。
さっそく見てきます。



246 名前: 238 投稿日: 2000/11/25(土) 02:04
>244

ご親切にありがとうございます。




247 名前: ウルトラ初心者 投稿日: 2000/11/25(土) 02:55
CとC++が決定的に違うのはどこですか?


248 名前: 初心者 投稿日: 2000/11/25(土) 03:02
C++に出来てCに出来ないことはないから
俺にはわかんないや。


249 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 03:57
Cは /*こめんと*/
C++ は/*こめんと*/
あと、//こめんと
ってこれはプログラムの内容とは関係ないか…


250 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 04:09
>247
クラスが使えるかどうかではないでしょうか


251 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 04:40
継承、参照、オーバーライド、オーバーロード、テンプレート
自在な宣言位置


252 名前: ウルトラ初心者@247 投稿日: 2000/11/25(土) 04:54
>248-251さん
情報ありがとうございますです
やっぱりクラスなんでしょうね♪

なんとなくsage...


253 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 05:14
ActiveX、Dll、com、OLE・・・
このへんの違いがわかりません。


254 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 05:35
dllだけ明らかに違う、それとdcomが抜けてる。




255 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 05:51
DLL
OLE -> COM(OLE/DCOM/OCX/ActiveX) -> COM+


256 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 07:39
>247=252
CとC++の違いはクラスだね。
Hensuu.a
Hensuu.b
とかクラスは便利だよ。やってみ


257 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 11:21
>>242
変わっとらんぞ。

×>java hello.class
○>java hello


258 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 11:24
BCCでWinアプリ作るにはどうしたらいいDeathか?


259 名前: >258 投稿日: 2000/11/25(土) 12:04
だからBCC55だったらWinアプリしか作れないんだよ。
たぶんGUIアプリの事だろなあ、

GUIに移る前に、このスレのコードを順番に試してみたらいいよ
http://mentai.2ch.net/test/read.cgi?bbs=prog&key=957341074


260 名前: ウルトラ初心者@239 投稿日: 2000/11/25(土) 18:39
延々と調べた結果「Toolhelp32API」と言う物に辿り着いたのですが、
これで宜しいのでしょうか・・


261 名前: 姐さん 投稿日: 2000/11/25(土) 21:33
>239
この辺は使ってみたかい?
http://www.microsoft.com/JAPAN/developer/library/jpwinpf/_win32_readprocessmemory.htm
http://www.microsoft.com/JAPAN/developer/library/jpwinpf/_win32_writeprocessmemory.htm



262 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 22:28
>>259
コンソールアプリに対して、ウィンドウアプリということも
あるんじゃないのか?
厨房書き込みでスマソ



263 名前: 初歩君 投稿日: 2000/11/25(土) 22:41
makefileの書き方が分かりません(泣
bcc55っす。


264 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 23:39
わかんないうちはmake書かずにやっとけ。
バッチでじゅうぶんだ。
それに嫌気がさしたら本気でmake書け。


265 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/25(土) 23:39
>>262
winmainで始まればwinアプリじゃないの?
>>258
-tWオプション

apiリファレンスとかはmsにplatform SDKがあるからドキュメントをdlしとこうね


266 名前: 初心者 投稿日: 2000/11/26(日) 00:51
ICMP Type4を噛まされるとどうなるんですか?


267 名前: 初心者 投稿日: 2000/11/26(日) 00:52
ICMP Type4を噛まされるとどうなるんですか?


268 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 00:53
>263
窓を出すプログラムで、
ソースコードが"test.c"
リソースファイルが"test.rc"
ヘッダが"test.h"
から"test.exe"を作る場合
#######################"makefile.mak"############################
test.exe : test.obj test.res
ilink32 /aa C0W32.OBJ test.obj,test.exe,,CW32.LIB IMPORT32.LIB,,test.res
test.obj : test.c test.h
bcc32 -c test.c
test.res : test.rc test.h
brcc32 test.rc
######################################################

窓を出さないプログラムの時は、リンクするオブジェクトなんかが変わるので、下でもみて研究してくれ。

http://www.inprise.co.jp/cppbuilder/freecompiler/faq/bccfaq3.html



269 名前: 初心者 投稿日: 2000/11/26(日) 00:53
2度書きすみません


270 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 01:38
構造体でscanfを使うとき、度のように書けばいいですか?こんな感じですか?

scanf("%d",(&a).b);




271 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 01:53
演算子の有線順序を見ろ>270


272 名前: 242>257 投稿日: 2000/11/26(日) 01:55
ありがとう。f(^^


273 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 01:59
優先順位云々の前にどうしてスキャンエフでは&がつくのかがわかりません


274 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 02:06
>273
変数の頭に'&'キーワードをつけると変数の値ではなくアドレスを返す。
scanf関数内部でそのアドレスに入力された値を格納しているので'&'をつけなければダメ。



275 名前: 270 投稿日: 2000/11/26(日) 02:45
いろいろ試したんですけど、どうしても
".または.*の左側に構造体が必要"
とでます。オテアゲデス。


276 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 02:51
scanf("%d",&a.b);
じゃだめか。
構造体の"."の方が"&"より強いから、括弧は要らないはず



277 名前: 276 投稿日: 2000/11/26(日) 02:55
できれば、どんな構造体でどんなふうに宣言してるか教えて。


278 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 02:57
こんなんですけど・・・

#include <stdio.h>


struct u{
int a;
};


void main(){


struct u x,*y;

x.a= 9;

y = &x;

printf("%d\n",y->a);
printf("%d",(*y).a);

scanf("%d \n",&y.a);

printf("入力は%p",y->a);

}



279 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 02:58
%pはきにしないでください


280 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 03:09
scanf("%d",&(y->a));
または
scanf("%d",&y->a);
です。
"->"の方が"&"より優先順位が高いので、括弧はあってもなくてもいいです。




281 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 03:37
>280

ありがとうございました!無事コンパイルできました。
scanf("%d \n",&((*y).a));
も可能であるというところまで理解できました!



282 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/26(日) 03:41
固羅278。おまえ確信犯やろ。ワラタぞ。


283 名前: >268 投稿日: 2000/11/26(日) 12:45
何とか出来ました。
ありがとうございました。


284 名前: 278 投稿日: 2000/11/27(月) 03:09
>282
えっ?意味がわかりません。あれまじです。


285 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 03:13
三つの関数からなっているプログラムをそれぞれコンパイルしてみてうまく行きました。それでまとめてコンパイルしたいのですけど、どうすればいいですか?bcc55です。またそういうやり方についてはどこに書いてあるのでしょうか?


286 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 03:16
C++を勉強中でPerlには手をつけてないのですが大丈夫でしょうか?
一応、人並み程度にPealも勉強しといたほうがいいのでしょうか?



287 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 03:24
Pealはチンコに埋め込むと、ナオンがよがって喜びます


288 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 03:45
>285

bcc32 aaa.c bbb.c ccc.c

じゃダメか?


コンパイルについて知りたければ、「make」について調べてみてください。
あと、コンパイラ付属のHELPも見てね。


289 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 03:48
>288
ありがとうございます、さっそく試して見ます、と行きたいところなのですが、バイトで中断です。


290 名前: とびとん 投稿日: 2000/11/27(月) 08:22
VBでシェアウェアを制作したのですが、
msvbvm60.dll
oleaut32.dll
mscomctl.ocx
これらのファイルを同梱して配布しても
良いのでしょうか?

著作権など、お解りになる方、宜しくお願いします。




291 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 09:15
キミが買ったマニュアルに書いてあるはずだが‥


292 名前: とびとん 投稿日: 2000/11/27(月) 10:28
マニュアル実家だ・・・


293 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 14:33
STLの本みてSTL使って組もうと思い、
最も初期段階である

#include <vector>
int main()
{
vector<int> data;
return 0;
}

がコンパイルが通らない、というか
型宣言が定義されてないと出るのです。
無論、『vector』ファイル自体の存在は確認しました。

当方VC++6.0仕様しているのですが
どこかオプションのチェックでも必要なのでしょうか?
MSDN見ましても使用サンプル等しか見つからず謎だらけでして、
どなたかご存知でしたらご教授宜しく願います。



294 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 14:37
>>293
std::vector<int> data;
と書きたくなければ
using namespace std;
の1行を入れよ。
ついでにC++のnamespaceの勉強をせよ。



295 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 14:55
>>293
有難うございます。
おかげでコンパイル出来るようになりました

>namespace
_STD_BEGINというマクロ定義が
stdに当たるんですね、YVALS.Hにて宣言してありました、
クラスの前にこんなもんが宣言してあったとは、
全く気付きませんでした。
今後はマクロも調べるよう注意します。



296 名前: 第3者 投稿日: 2000/11/27(月) 15:58
>>295 >>293
自分に感謝してどーする。


297 名前: 293 投稿日: 2000/11/27(月) 17:20
>>296

う”、
>>294
の間違いですね、間抜けだ。



298 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 17:46
エラーが出ちまいます。
おかしいところ、なんか変だとおもうところwご指摘ください。

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>

struct buf{
int number;
int count;
struct buf *prebuf;
};

struct value{
int order;
int number;
int memo;
};

struct buf *input()
struct value *change(struct buf *buf) //ここでエラー
void display(struct value *value1)
void main(){

display(change(input()));

}





299 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 17:50
せめてどんなエラーが出るかぐらい書けよ。
セミコロンが抜けている、とかじゃねえだろうな。


300 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 17:57
ポインタは使ったことあるのですが
ポインタのポインタ…は使ったことありません。
どういうところで使うと便利なものなんでしょうか?


301 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 18:04
>>300
int main(int argc, char **argv)


302 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 18:12
>299

19行目で宣言の構文エラーとでます。



303 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 18:15
>>298
>struct buf *input()
>struct value *change(struct buf *buf) //ここでエラー
>void display(struct value *value1)
struct buf *input();
struct value *change(struct buf *buf); //ここでエラー
void display(struct value *value1);



304 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 18:20
>303さん
ありがとうございました。
セミコロン抜けでした。すいません・・・宣言ではいらないとおもってました。


305 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 18:32
char *temp1[2] = {
{'A','B','C','\0'},
{'D','E','F','\0'}
};

char *temp2[2] = {
"ABC",
"DEF"
};

char temp3[2][4] = {
{'A','B','C','\0'},
{'D','E','F','\0'}
};

この3つのうち、最初のだけがエラーになります。
{'A','B','C','\0'} と "ABC" って全く同一だ
と思っていたんですが、勘違いしてますか?

ちなみに、コンパイラはcygwinのgcc


306 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 18:57
このプログラム、最初のexternをしないできちんと定義を書くとうまくいきます。externの使い方がまずいのでしょうか?

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>


extern struct buf;
extern struct value;
struct buf *input();

struct value *change(struct buf *buf1){

int i,j,k,c;struct value *value1=NULL,*temp1=NULL;

while((value1 = (struct value *)calloc(buf1->count,sizeof(struct value))) !=NULL)
printf("メモリ確保中・・・・・・・・・・");
while((temp1 = (struct value *)calloc(buf1->count,sizeof(struct value))) !=NULL)
printf("メモリ確保中・・・・・・・・・・");

c = buf1->count;//いずれつかうカウント値の為

for(i=buf1->count;i > 0;i--){
(value1+i-1)->order = buf1->count;
(value1+i-1)->number = buf1->number;
buf1 = buf1->prebuf;
}

printf("入力完了!");

//ここからチェンジ!のアルゴリズム

while( c > 0 ){
for(j = 0;j < c;j++){
for(k = j+1;k < c;k++){
if((((value1+j)->number) - ((value1+k)->number)) < 0){
*(temp1+j) = *(value1+j);
*(temp1+k) = *(value1+k);
*(value1+j) = *(temp1+k);
*(value1+k) = *(temp1+j);
c--;
}//if
}//for
}//for
} //while return value1;

}//end





307 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 19:17
構造体の宣言(型の宣言)に extern は使わん。
それと、完全な構造体の宣言をかいとけ。


308 名前: >305 投稿日: 2000/11/27(月) 19:30
確かに、文字列リテラルは配列だ。
だが、配列は先頭アドレスを取り出したとき、
少数の例外を除いてポインタとなる。
逆に、特例としてchar型の配列に限り、
変数の羅列ではなく、リテラルで初期化できる。

char *temp1[2];
これは、2次元配列(配列の配列)ではない。
ポインタの配列だ。


309 名前: >306 投稿日: 2000/11/27(月) 19:33
まだ、コンパイルエラーの原因で悩むレベルなのに、
メモリの動的確保やリスト構造は無理だと思う。
externもわかってないし。

それとも課題か?


310 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 19:43
>>305

> {'A','B','C','\0'} と "ABC" って全く同一だ
> と思っていたんですが、勘違いしてますか?
勘違いです。
文字列リテラルはアドレスを持つことはできますが、
文字定数はアドレスを持つことはできません

2次元配列ならば可能です
char temp4[][4] = {
 {'A','B','C','\0'},
 {'D','E','F','\0'},
};



311 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 19:47
>309

いえ、メモリの動的確保の基礎は理解しました。どうしてexternの使い方とかコンパイルの方法とかで悩むのかというと、いままで使わなかったからです。いっつも全部ひとつにまとめてやっていました。しかしそろそろ分割してやろうとおもいまして・・・・


312 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 19:54
C++です。
クラスはどんなときに使うと便利なんでしょうか?
関数を作るのに比べて手間が増えるように思えてしまいます。
あと、構造体、共用体もいつ使うんでしょうか?
いまは配列変数を使っています。
basic出身はコードが汚いというのは私のことでしょうか?



313 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 19:58
>>311
動的確保の事を理解しようとする前に、入門用の文法書読めよ。


314 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 20:01
>309
ちなみに、
char *temp2[2] = {
  "ABC",
  "DEF"
};
と同じ意味となる(const除外)のは、

static char noname1[] = {'A','B','C','\0'};
static char noname2[] = {'D','E','F','\0'};
char *temp1[2] = {
  noname1,
  noname2
};

int等のポインタの配列を作る場合、この形に直すしかない。

>312
FILEとか使った事はないのか?
その辺からカプセル化を考えるとよいと思うが。
>あと、構造体、共用体もいつ使うんでしょうか?
って、構造体がわからなきゃ、クラスなんか意味不明かも。


315 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 20:16
動的確保を理解している奴が、
>while((value1 = (struct value *)calloc(buf1->count,sizeof(struct value))) !=NULL)
>  printf("メモリ確保中・・・・・・・・・・");
こんな糞な事するかよ。
解放してねーし。


316 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 20:24
<310 も、けっこうアヤシイ感じがするなぁ。
それとも「教育のウソ」ってやつかな?


317 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 20:27
> 動的確保を理解している奴が、
> >while((value1 = (struct value *)calloc(buf1->count,sizeof(struct value))) !=NULL)
> >  printf("メモリ確保中・・・・・・・・・・");
> こんな糞な事するかよ。
確かにこいつはまずい
(メモリ確保できないと無限ループになる可能性がある)

> 解放してねーし。
これは?だな
この関数内で解放しなくともmainが終了する前に解放すればいいんだよね?
ノードの解放用の関数かなんかで
(また、機能を推測する限りそうすべきだと思う)



318 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 20:31
>315、317

はい、どうやら理解できてないようです。一応全部のファイルをコンパイルして実行ファイルできたのですが、しょっぱなでメモリエラーくらいました。いったいどうすればいいのでしょう・・・?


319 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 20:39
入門書を読みなおせばよい。


320 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 20:50
>319

そんな酷な・・・・
プログラミング言語C 第二版 ANSI規格準拠 B.W.カーニハン/D.M.リッチー著 石田晴久 訳
しかありません。。。


321 名前: 初歩君 投稿日: 2000/11/27(月) 20:51
>>305
僕も一応初心者なんで、間違ってたらスマソ。

そんで、「独習C」という本の中に次のような文があります。

>C言語ではプログラムの中で二重引用符で囲んだ文字列定数を扱うことが出来ます。
>コンパイラはこのような文字列を見つけると、プログラムの文字列テーブルにそれを格納して、
>文字列に対するポインタを生成します。

ということは、char型ポインタの宣言の時に、
二重引用符で囲んだ文字列定数が右辺にない限り、
文字列テーブル及び文字列に対するポインタは生成されないのではないでしょうか。

だから、temp1の宣言は、char型のポインタを2個作っているだけで、
文字列テーブルを作っていないんだと思います。


322 名前: >317 投稿日: 2000/11/27(月) 20:57
value は戻り値だが、tempはリークするよ。


323 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 21:00
>>305
とりあえず、
char* の配列だと思っているところに、文字定数があるから、
コンパイラが困ってるんだよ。


324 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 21:01
>>320
文法もろくに理解せず、コンパイルエラーも自力で解決できないんだから、
「まだそんなことするな」


325 名前: 317 投稿日: 2000/11/27(月) 21:08
> value は戻り値だが、tempはリークするよ。
すいません、おっしゃる通りです。
temp1は解放しとかないとまずいですね。



326 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 21:14
そんな320の為へ、参考ソース
(書き殴りだから、細かいミスには目をつぶれ)

========================================
hoge.h:
----------------------------------------
struct hoge{
 int a;
 int b;
};

extern struct hoge h

========================================
a.c:
----------------------------------------

#include "hoge.h"

struct hoge h;

int main(void)
{
 h.a = 0;
 h.b = 1;
 hogesub();
}

========================================
b.c :
----------------------------------------
#include "hoge.h"

void hogesub(void)
{
 printf("a = %d b = %d\n",h.a,h.b);
}


327 名前: 326 投稿日: 2000/11/27(月) 21:25
hoge.hの最後に
;
void hogesub(void);
と、
mainの最後にreturn(0);を追加。


328 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 21:35
こうやってincludeしたんですけど、だめですか?

//head.h

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>


struct buf{
int number;
int count;
struct buf *prebuf;
};


struct value{
int order;
int number;
int memo;
};




329 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 22:11
何が理解出来ていない(いなかった)かだけでも挙げといてやろうか。

・typedef名
 構造体のタグ名と区別がついていなかった。
・構造体のポインタを示す文法
 直前に
  struct buf *prev;
 と書いていながら、
  struct *buf func();
 などとしていた。自分で見直す気は無いのか?
・関数の宣言の文法(直後のセミコロン)
 論外。少しは自分で考えるか調べるかしろ。
・宣言と定義の区別
・記憶クラス指定の文法
  extern struct buf;
 ってなんだ?
 構造体の宣言に記憶クラスつけてどうする?
 変数の宣言につけろ。
・while文
  while (式)
   文
 は毎回式を評価し、その結果が真である間繰り返し実行する。

以上、どう考えても、基本を理解しているとは思えない。
やろうとしている事と、理解している事に差がありすぎる。
理解していないから、文法エラーが解決できない。


330 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 22:17
NTの場合、DOS窓の起動時のディレクトリの設定をかえるにはどうすればいいでしょうか?プログラムが暴走したときに再び起動していちいち作業ディレクトリまで移動するのは大変です。


331 名前: >330 投稿日: 2000/11/27(月) 22:29
板が違う。


332 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/27(月) 23:32
なにも入力せずリターンキーを押したら終了し、整数以外をいれたら注意して入力やり直しをするようにしたいのですけど、どうすればいいでしょうか?atoi使わないでできますか?


333 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 00:06
>>332
strtol



334 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 04:59
どうも耳年寄りな童貞が多いな。


335 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 14:59
本に書いてある関数の引数が意味不明です。これらはどうやって理解すればいいのでしょう?
たとえばprintfは実際に使うときはprintf("****%d",a)のようなのに、本にはint printf(char *format,arg1,arg2...)と書いてあります。char *format??ハァ?まぁprintfはいいとしても、上のようなstrtol関数なんかもうお手上げです。いったいどこでこういう関数の使い方覚えるんですか?


336 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 15:14
#include <iostream>
#include <fstream>
using namespace std;

void main()
{
cout.seekp( 3, ios::beg ) << "hello\n";
}
こうしてもディスプレイからの出力はし-くされません
ファイルでなくディスプレイからの出力で
最初や途中から上書きするにはどうすればいいのですか?
文字べ-すでてとりすやいんべ-だを作りたいのですが
それに必要です、できればC++で教えてもらいたいのですが
Cでもいいです、誰かたすけてください




337 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 15:14
>>335
> いったいどこでこういう関数の使い方覚えるんですか?
マニュアル読め!
man printf
man strtol

検索エンジンで調べろ
本を読め、知ってる人に泣き付け
小さいサンプル作って関数の動きを予測してみろ

> char *format??ハァ?
逆切れしている暇があったらな



338 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 15:17
>>335
const char * b = "%d\n";
printf("%d\n",a);
printf(buf,a);
結果は一緒だ、ということ。
strtol ライブラリのリファレンスマニュアルを読むべし。
ある程度分かってきたら、リファレンスマニュアルを一通り、流し読みでも
良いから読んでみて、大体どんな関数が用意されているのか、把握しておい
て損はない。




339 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 15:45
>337
それってunixのコマンドでは??

ほかの環境ではむりなのでは?



340 名前: 337 投稿日: 2000/11/28(火) 16:02
>>339 そうだね
>マニュアル読め!
>man printf
>man strtol
ライブラリのリファレンスマニュアルを読め!

でいい?
# 相手は環境を書いてないし



341 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 16:09
337ではないが、

>>339
 大概の環境にmanは移植可能だし事実移植されてるOSは
多々ある。WEB上で参照できるmanページも多々ある。

>>335
 で、
int printf(char *format,arg1,arg2...);
 はprintfのプロトタイプ宣言。

 何の本だか知らないが、あわせて"format"に何を
書けるかとかの解説があるはずだ。無ければその本は
クソなので、捨てて新しいのを買え。
 つーかそんなクソな本があるとも思えないが、なんて
題名の本よ?


342 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 16:31
>341
説明かいてあることは書いてありますが、初心者にとっては非常にわかりずらいです。char *formatってかかれてもわかっている人にとってはformatが単なる文字列でないことはわかりますけど、初心者はそうは解釈しないのでは?この本が訳本だからいけないということもあるかもしれませんけど。
ちなみにその本は
プログラミング言語C 第二版 ANSI規格準拠 B.W.カーニハン/D.M.リッチー著 石田晴久 訳
です。




343 名前: 341 投稿日: 2000/11/28(火) 17:08
>>342
 初心者なら、宣言と実装がどう違うかなんて辺りで
悩むかもしれない。それは誰しも通った道だから、
努力して理解するしかないよ。
 今まで扱ったことのない概念なんだから、それは当然だ。
 ともかく判るまで繰り返して読むのだ。

 ただその本は初心者の参考書としては、薦められない。
 参考書なら他の本を買った方が良いと思うな。
 とはいえ、どれがいいかとは聞かないでくれ。もう忘れたよ。
 最近の初心者向けの本も知らないしさ。

 ところで、その本は原点で原典なので、捨てるには及ばないよ。
 Cを書いていくなら、将来必ず役に立つはずだ。



344 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 17:44
入門書っつーより、リファレンスとしてなんだけど、
LSI-C試食版の中にあるLSIC86.MANが
いろいろ書いてあって参考になる。
makeの使い方も載ってる。


345 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 17:57
なあ、342君よ、一歩わからなくなる度にここで聞くんじゃなくてさ、
何時間も調べたり試したりして悩んでみたらどうだい?
みんなすぐにわかったわけじゃなくて、苦労して学んでるんだからさ。

今は良い時代なんだから、手元に本が無くても学べるだろ?
http://piza.2ch.net/test/read.cgi?bbs=tech&key=967778156&st=8&to=8&nofirst=true
ここに載ってる中にも、初心者向けのページがあるよ。


346 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 17:58
> char *formatってかかれてもわかっている人にとってはformatが単なる文字列でないことはわかりますけど
char *formatってかかれてるからいちど意味がわかればformatが単なる文字列であることがわかりますでしょ?



347 名前: Nana 投稿日: 2000/11/28(火) 17:58
こんにちは。ここでは初の書き込みです。
C言語って何ですか?よりは微妙にマシ、レベルの超素人です。
最近Javaアプレットを始めました。
JDK1.3のインストール→パスを通す、までは
なんとか出来たのですが、
なぜかコンパイルできません。
エラー、読みこめません、となってしまいます。
単なる打ち間違いなどではありません。
本来ならばこんなことは、本読んで、自力で解決すべきだとは
思うのですが、どうやっても解決できません。
もし「そりゃあオマエ簡単なことだろうよ……」ってな冷たいツッコミ、
解決策など入れていただけたら、と思います。
お目汚しで失礼致しました。


348 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 18:14
>>347
環境と、エラーメッセージを教えてくれ
それがないと何もわからん



349 名前: Visual名無しさん 投稿日: 2000/11/28(火) 18:20
>>347
最近俺の友人で、メモ帳でソースを書いてたせいでファイル名が
Lesson.java.txt になってて、読み込めませんエラーになった奴が居たが。


350 名前: Nana 投稿日: 2000/11/28(火) 18:23
エラーメッセージは、
          エラー:first.javaを読みこめません。
          エラー1個
こんだけです。
OSはWIN98です。JavaはJava2SDK1.3です。




351 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 18:29
>>350
コマンドラインから「dir」と打ってみて
first.javaファイルは見つかりますか?

もし、見つからなかった場合は
first.javaのあるディレクトリに移動してから
再度コンパイルしてみてください



352 名前: Nana 投稿日: 2000/11/28(火) 18:30
あ、メモ帳で書いています。
でもファイル名はFirst.javaです。>349



353 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 18:32
MASMと言うアセンブラが欲しいんですけど,MSのサイトで配布しているのでしょうか?


354 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 18:40
>>352
確か...記憶違いだったらすまん
javacは大文字と小文字を区別するんで
First.javaをコンパイルさせたかったら
javac First.java
とするんだと思う...
>>350
だと
javac first.java
ってやってない?




355 名前: Nana 投稿日: 2000/11/28(火) 19:00
皆さん、ありがとうございます。
>354 大文字でやってみましたが、そういう問題ではなかったようです。
>351 ファイルはありましたが、ファイル名がFirst.java.txtに
    なっていました。
>349 と言うことで仰る通りだったようです。
    でも、txtの取り方がわかりません……
    めちゃくちゃ初歩的だってことはわかるのですけれど……
    すみません。


356 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 19:04
dosプロンプトで
ren "First.java.txt" "first.java"



357 名前: Nana 投稿日: 2000/11/28(火) 19:14
パラメータが足りません、と出てきました。>356


358 名前: 349 投稿日: 2000/11/28(火) 19:28
メモ帳で保存するときにファイル名を
First.java じゃなくて "First.java" と""でくくって打て。
頭のFの小文字大文字は適切な方で。


359 名前: >355 投稿日: 2000/11/28(火) 19:50
エクスプローラ->表示->オプション で
登録されているファイルの拡張子は表示しないのチェックを外す

その後エクスプローラでマウス右ボタンで名前の変更


360 名前: Nana 投稿日: 2000/11/28(火) 21:00
>348、349、351、354、356、357、358、359
無事にコンパイルできました。
皆さん、本当にありがとうございました。
心からお礼申し上げます。
超初心者質問で失礼致しました。
では。



361 名前: 名無C 投稿日: 2000/11/28(火) 22:07
FORTRAN→C変換プログラム、f2cなるものがあるのですが

誰か使ってる人いますかね?(使った人でも可)


362 名前: >353 投稿日: 2000/11/28(火) 22:52
配布してます。
DDKっやつです。


363 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/28(火) 23:42
しょうもない質問で申し訳ありませんが、
C++のクラスについて
class A
{
pulic:
int a;
class B
{
...;.
};
};
クラスB内でaにアクセスするのにはどうしたらいいのでしょうか?



364 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 02:21
>363
Bからはできません。できない方が自然でしょう。クラススコープ外の事なんか知らなくて良いし。
普通はA、もしくは他がアクセスさせる手段を提供します。


365 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 03:02
>363
A::aでできなかったっけ?


366 名前: ( ´∀`)さん 投稿日: 2000/11/29(水) 03:20
public ならそれでできるような…<365


367 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 04:56
>>365-366 うわ。バカ。


368 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 06:24
1、BをAの友達にする。
2、offsetof()をつかって、Aのアドレスを求める。


369 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 09:09
>365
static int a;


370 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 09:12
pulic:ってなによ? public:?


371 名前: >370 投稿日: 2000/11/29(水) 11:32
別にその程度はいいだろう。
分かるだろうが。
実際のコーディングのときには別色で表示されたりするから
間違いがすぐに分かるよ。


372 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 12:00
↑オマエモナー


373 名前: >372 投稿日: 2000/11/29(水) 12:22
オマエモナーって、
どう言う文脈で言ってるんだよ。
意味がわからん。


374 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 12:26
C言語で、iniファイルとレジストリを読み込みたいのですが、
方法はあるのでしょうか・・・・



375 名前: >374 投稿日: 2000/11/29(水) 12:38
ini file は 普通にテキストモードで開くじゃダメかい?


376 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 12:49
>>374
GetPrivateProfileString()とか
RegQueryValueEx()とかじゃダメなのか?


377 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/29(水) 23:48
メモリを動的確保するとき線形にポインタでつながりますが、配列状に確保するときはどうすればいいのでしょうか?
その構造体にもうひとつポインタのメンバを用意するとか?


378 名前: >377 投稿日: 2000/11/29(水) 23:51
今ひとついってることがわからん。
配列に必要な要素数分をallocするのじゃダメなのか?


379 名前: 377 投稿日: 2000/11/30(木) 00:01
えー・・・通常はメモリを確保すると

[]-[]-[]-[]-[]-・・・

なふうにつながっていますけど、それを

[]-[]-[]-[]-[]-・・・
[]-[]-[]-[]-[]-・・・
[]-[]-[]-[]-[]-・・・
:
:(行は任意)
にしたいのです。



380 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/30(木) 00:26
>377
じゃあリストの先頭ポインタをしまっておく配列作ったら?
Listが線形リスト一個分を表現するクラスだったら

List* listptr[SIZE];
for(i=0;i<SIZE;i++){
 listptr[i]=new List();
}

例えばこんな感じで。


381 名前: 377 投稿日: 2000/11/30(木) 00:30
すいません、Cでお願いします。


382 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/30(木) 00:37
じゃあListがリストの要素構造体だと思って

typedef struct List_t{
int data;
struct List_t* ptr;
}List;

とかとでも宣言してたとして、ループの中身を

listptr[i]=malloc(sizeof(List));
listptr[i]->data=0;
listptr[i]->next=NULL;

こうしとき。

リスト伸ばすときは
listptr[i]->next=malloc(sizeof(List));
で伸ばしてチョ。



383 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/30(木) 00:39
じゃあListがリストの要素構造体だと思って

typedef struct List_t{
int data;
struct List_t* ptr;
}List;

とかとでも宣言してたとして、ループの中身を

listptr[i]=malloc(sizeof(List));
listptr[i]->data=0;
listptr[i]->next=NULL;

こうしとき。




384 名前: 名無しさん@お腹いっぱい。 投稿日: 2000/11/30(木) 00:40
あら?二重になっちった。スマソ。


385 名前: 377 投稿日: 2000/11/30(木) 01:07
うー・・・わかったようなわからないような・・
とりあえずありがとうございました。


386 名前: 377 投稿日: 2000/11/30(木) 01:09
うー・・・わかったようなわからないような・・・
とりあえずありがとうございました。


387 名前: 363 投稿日: 2000/11/30(木) 01:18
遅くなりました。レスどうもです。
この方法で一応解決しました。
class A
{
public:
 A():B(*this){}
 int a;
 class B
 {
  A &_A;
 public:
  B(A& p):_A(p){}
  void Func(void)
  {
   _A.a=120;
  }
 }B;
};
368さんの方法も試して見ます。
こんな感じのことをしたかったのです↓
class vector
{
public:
 double x,y,z;
 vector():length(*this){}
 class length
 {
  vector& v;
 public:
  length(vector& p):v(p){}
  operator double (void)
  {
   return sqrt(v.x*v.x+v.y*v.y+v.z*v.z);
  }
 }length;
};
main()
{
 double len;
 vector pt;
 pt.x=10,pt.y=10,pt.z=10;