
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
ifstreamのインスタンスを生成しただけでは読み込みは行われません。
ifstream.openの第1引数は、読み込み先領域のポインタではなく、ファイル名です。
ifstream.openは
ifstream dataFile;
dataFile.open("datafile.txt");
のように使用します。実際の読み込みは、cinと同様、
dataFile >> buffer;
のようにして行います。
但し、区切り文字に関しては注意してください。
# 一度、ファイルの内容をただ表示するだけのプログラムを書いてみると感じがつかめるかもしれません。
ハッシュに関しては、例示されたクラスでは不都合があると思われます。
hash値を格納するメンバが書かれていますが、データが動的に変更される可能性がある以上、これを格納することに意味がありません。
もし、データ数が少なく、かつデータが変更されないのであれば、配列をソートしてインデックスを付加した方がよほど効率的です。
ハッシュテーブルを作成する場合には、Java言語のjava.util.Hashtableクラスを参考にすると良いと思いますが、
標準的な実装としてはキーと値の組を表すクラスと、ハッシュテーブルを表すクラスの2つを作成することになるでしょう。
参考URL:http://java.sun.com/j2se/1.3/ja/docs/ja/api/
No.2
- 回答日時:
#1さんの回答はperlのような気がしますが...
Cには連想配列がないため、連想配列を実現するライブラリを使用するか、自分で実装します。
「自分で実装」の部分を詳しく知りたいなら、CなのかC++なのかを書いてください。
この回答への補足
返信有り難うございます。
プログラムはC++で作っています。
class Name{
char name[64];
int hash[20];
public:
Name();
int show();
};
というクラスを作り、
データファイル内のデータを
name[64]にいれて、
ハッシュを計算しようと試みたのですが、
ファイル自体を読み込んで無いようです。
ifstream J;
J.open(DATA, (ios::nocreate));
これでファイルは読み込めているのでしょうか?
ファイルを読み込んで、データをname[64]に
入れる事は出来るのでしょうか?
よろしくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DLLファイルの逆コンパイラにつ...
-
Windows Formアプリからコンソ...
-
プログラマー達は何故、プログ...
-
C言語のことです。写真(見にく...
-
c#のTLS1.2での通信について
-
visual studio 2022でのC#プロ...
-
C言語の関数のextern宣言
-
C言語について(初心者)
-
C# で 数式文字列処理を処理す...
-
C言語 関数、変数の宣言について
-
逆コンパイルと逆アセンブルの...
-
c言語
-
C言語について。
-
c言語でイベントフラグを使った...
-
大量のデータを読み込んで表示...
-
プログラミングc++を全く分か...
-
あってる
-
コンソールアプリを作成するの...
-
プログラム言語について c言語...
-
swift言語の最適化 swift最適化...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
c言語
-
DLLファイルの逆コンパイラにつ...
-
Windows Formアプリからコンソ...
-
大量のデータを読み込んで表示...
-
C言語の関数のextern宣言
-
VisualStudioでC++クラスを追加...
-
【C言語】全角文字の配列を、全...
-
VisualStudio2022でC言語プログ...
-
C++でデスクトップGUIアプリ開...
-
gccを行ってもexeファイルが生...
-
C#でTreeViewのCheckBoxのサイ...
-
C#でログファイルにファイルパ...
-
プログラマー達は何故、プログ...
-
逆コンパイルと逆アセンブルの...
-
Notepad++の関数リスト表示の変...
-
C言語について。
-
Cのコンパイルでコメントアウト...
-
visual studio 2022でのC#プロ...
-
コンソールアプリを作成するの...
-
C言語 バッファについて。
おすすめ情報