• ベストアンサー

RFC6234 の stdint.h

RFC6234 を参考にして、 SHA-224 をVC++で動かしてみたいのですが、 stdint.h の代わりに何を指定すれば良いのでしょうか? お分かりの方よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

http://datatracker.ietf.org/doc/rfc6234/?include_text=1 ですか? セクション8.1.1.に The following sha.h file, as stated in the comments within the file, assumes that <stdint.h> is available on your system. If it is not, you should change to including <stdint-example.h>, provided in Section 8.1.2, or the like. って書かれていますけど…… セクション8.1.2にあるstdint-example.hで代用は出来ないんですか?

uyama33
質問者

お礼

確認したら ご指摘のとおりでした。 ありがとうございました。

その他の回答 (1)

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.2

ちなみに…VS C++ 2010 ExpressEditionにはstdint.hがあります。 2008 ExpressEditionには入っていませんでしたが。 # 当然VS2005にも入っていないでしょう。 > * If you do not have the ISO standard stdint.h header file, then you > * must typedef the following: > * name meaning > * uint64_t unsigned 64-bit integer > * uint32_t unsigned 32-bit integer > * uint8_t unsigned 8-bit integer (i.e., unsigned char) > * int_least16_t integer of >= 16 bits ってことらしいので…… 必要な型のtypedefすればOKそうではありますが。

uyama33
質問者

お礼

#define uint64_t unsigned long long #define uint32_t unsigned int #define uint8_t unsigned char #define int_least16_t int としたら、だいぶ文句を言わなくなりました。 ありがとうございます。 ただいま、 getopt() の代わりを作成中です。 またよろしくお願いします。

関連するQ&A

  • RFC?

    今、メール送信処理のプログラムをみているのですが、 RFCに準拠していないヘッダを削除するように言われているのですが、 どこをみていいのかわかりません。 ちなみに送信している部分などは理解していて、 RFC(?)とかそれに関することがまったくわかりません。 ご存知の方、またはサイトを知っている方宜しくお願いします。

  • RFC2510について

    RFC2510の翻訳版を探しているのですが見つかりません。 どなたか知っている方いらっしゃいますか??

  • RFCとプログラム

    RFC1939,1869,2822(pop3,smtp,imf)を 読んでいますが、 この規定があるから、 プログラムはどうするのか? については、  どこかに書いてあるものがあるのですか? それとも、 そんな方法はどこにも書かれていなくて、 プログラムする人が、それぞれ自分で考えて プログラムを作っていくのでしょうか? 今は、サンダーバードのソースコードを 参考にしながら考えています。 どこかにあれば助かります。 よろしくお願いします。

  • 返信メールの「Re:」に関するRFCは?

    返信メールの件名の先頭に「Re:」を付けるスタイルが多くのメールソフトでデフォルトとなっていて、普及しています。その意味については諸説ありますが、それは置いといて(置いといてくださいね!)、この「Re:」の使い方に言及したRFCって、あるのでしょうか? ネチケットに言及したRFCやジョークRFCまでありますので、どこかで言及していてもいいかなと思って、それらしいRFCを見て回ったり検索していますが、なかなかHitしません....そもそも存在するかどうかわかりませんし。 というワケで、もし、「Re:」に言及したRFCをご存知の方、その番号を教えてくださいませんでしょうか(翻訳されていないRFCでも結構です)。   

  • VC++でstdio.h

    VC++でstdio.hを使いたいのですが、 「構文エラー」や「型指定子がありません」 などがビルド時に表示され、これ以上先に進めず困っています。 どなたか解決法を教えてください。 よろしくお願いします。

  • [RFC821]<mailbox>の<domain>について

    RFC821 http://www.ietf.org/rfc/rfc0821.txt を見ると次のように記述されています。 <mailbox> ::= <local-part> "@" <domain> <domain> ::= <element> | <element> "." <domain> <element> ::= <name> | "#" <number> | "[" <dotnum> "]" <name> ::= <a> <ldh-str> <let-dig> <ldh-str> ::= <let-dig-hyp> | <let-dig-hyp> <ldh-str> <let-dig> ::= <a> | <d> <let-dig-hyp> ::= <a> | <d> | "-" <a> ::= any one of the 52 alphabetic characters A through Z in upper case and a through z in lower case <d> ::= any one of the ten digits 0 through 9 で、これを読むと, <domain>は1つのelementまたは,ピリオド区切りで任意の個数のelementのどちらかであり, <element>は"#"<num>や"["<dotnum>"]" の指定でなければ<name>であり, <name> ::= <a> <ldh-str> <let-dig> であるからnameは3文字以上でなければならない ・・・と思うのだけれど yahooのフリーのアドレスは example@yahoo.co.jp のようにcoやjpが既に2文字でこれに当てはまらないような気がするのですが,俺は何か間違っているんでしょうか? =============== もう一つオマケ。 <special> に含まれるのは ( "@" """ )であって, ( "@" | """ ) ではないんですよね?

  • プログラミングハッシュ値についての質問

    #ifndef _SHA1_H_ #define _SHA1_H_ //#include <stdint.h> /* * If you do not have the ISO standard stdint.h header file, then you * must typdef the following: * name meaning * uint32_t unsigned 32 bit integer * uint8_t unsigned 8 bit integer (i.e., unsigned char) * int_least16_t integer of >= 16 bits * */ typedef unsigned int uint32_t; typedef unsigned char uint8_t; typedef short int_least16_t; #ifndef _SHA_enum_ #define _SHA_enum_ enum { shaSuccess = 0, shaNull, /* Null pointer parameter */ shaInputTooLong, /* input data too long */ shaStateError /* called Input after Result */ }; #endif #define SHA1HashSize 20 /* * This structure will hold context information for the SHA-1 * hashing operation */ typedef struct SHA1Context { uint32_t Intermediate_Hash[SHA1HashSize/4]; /* Message Digest */ uint32_t Length_Low; /* Message length in bits */ uint32_t Length_High; /* Message length in bits */ /* Index into message block array */ int_least16_t Message_Block_Index; uint8_t Message_Block[64]; /* 512-bit message blocks */ int Computed; /* Is the digest computed? */ int Corrupted; /* Is the message digest corrupted? */ } SHA1Context; /* * Function Prototypes */ int SHA1Reset( SHA1Context *); int SHA1Input( SHA1Context *, const uint8_t *, unsigned int); int SHA1Result( SHA1Context *, uint8_t Message_Digest[SHA1HashSize]); #endif /* のプログラムを160ビットのハッシュ値を今出力しているのですが16ビットだけを出力するようにしたいです。[SHA1HashSize/4]のところを直せば16ビットだけ出力できるらしいのですが、今のところ書き変えてもそれらしい答えが出てきませんどなたかご教授ください

  • RFC822形式での日時の取得

    いつも勉強させていただいております。 PHP初心者です。 データベース:PostgreSQL PHPのバージョン:4.4.2です。 RFC822形式での日時の取得について教えてください。 「$tdata」のカラムに「2011-01-27 12:59:59.123456」の形式で入っている投稿日時をRFC822の書式(Tue, 26 Sep 2006 17:04:07 +0900)にするため、以下のように設定しました。 ※参考ページ:http://okwave.jp/qa/q2433033.html ----------------------------------------- $tdata2 = date("r",strtotime($tdata)); $list .='投稿日時:'.$tdata2.''; ----------------------------------------- 投稿日時はすべて「Wed, 31 Dec 1969 23:59:59」と表示されてしまいました。 正しい投稿日時を表示するようにするには、どのようにすれば良いでしょうか。 お分かりの方がいらっしゃいましたら、ご教示ください。 また、最新更新日時も同じページに表示したいと思っています。 最後に投稿した記事の投稿日時を表示するにはどのように設定すればよいでしょうか。 あわせて教えていただけましたら助かります。 よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • 下記RFCの機能(内容)について調べていますが、具体的にどのような内容

    下記RFCの機能(内容)について調べていますが、具体的にどのような内容なのかが分かりません。 御存じの方がおられれば、御教え頂けませんでしょうか。 宜しくお願い致します。 IPV4 and IPV6 in bi-mode in reference to RFC-3964

  • graphics.h

    VC++で、graphics.hが、ないです。どうすればいいんですか?

専門家に質問してみよう