ベストアンサー アドレス値はどの型にキャストすればよいでしょうか? 2011/03/04 20:14 環境はWindows32bitです。 できれば64bitにも対応した型が知りたいです。 みんなの回答 (8) 専門家の回答 質問者が選んだベストアンサー ベストアンサー notnot ベストアンサー率47% (4903/10364) 2011/03/04 23:27 回答No.8 補足を見ると、「アドレス値はどの型にキャストすればよいでしょうか? 」は間違いで、 アドレス値を整数型変数に入れたいが、その変数の型名に何を使えばいいか? ですね。 ISO/ANSI/JIS規格だと、intptr_t 。符号無し整数なら uintptr_t です。 JISだと、下記に書いてあります。 7.18.1.4 オブジェクトを指すポインタを保持可能な整数型 サンプル: #include <stdio.h> #include <stdint.h> main(){ char *p = "ABC"; intptr_t address = (intptr_t)p; printf("%X\n",address); printf("%p\n",p); } 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 その他の回答 (7) ICE_FALCON ベストアンサー率56% (63/111) 2011/03/04 23:13 回答No.7 どうしてもキャストしたいならsize_t型かな・・・ 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 qwertfk ベストアンサー率67% (55/81) 2011/03/04 23:06 回答No.6 intptr_t uintptr_t で32/64bit対応できるはず。 int i = 0; uintptr_t ptr = (uintptr_t)&i; 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 a_kwn ベストアンサー率34% (8/23) 2011/03/04 22:58 回答No.5 INT_PTR, UINT_PTR, intptr_t, uintptr_t ぐらいが浮かびますが・・・。 あなたの開発環境にも、これに類したものがあるとおもいますので、 適切なものを使ってください。 質問者 お礼 2011/03/05 01:04 回答ありがとうございました。 またすこし理解が深まりました。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 kmee ベストアンサー率55% (1857/3366) 2011/03/04 21:17 回答No.4 一応書いておくと sizeofでポインタと各整数型の大きさを調べるのが確実です。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 kmee ベストアンサー率55% (1857/3366) 2011/03/04 20:59 回答No.3 WIndowsで普通のプログラミングしているかぎり、ポインタを数値にして使う場面はまず無いと思うのですが。 ポインタをポインタのまま使ってなにか不都合でもあるのでしょうか? 質問者 お礼 2011/03/05 01:03 回答ありがとうございました。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 noname#140082 2011/03/04 20:36 回答No.2 キャストを日本語に訳すと「型変換」となるので、何らかの型変換処理が行われると思いがちですが、キャストとはコンパイラに対する命令(?)なので、簡単に言えば「型をだます」だけで、何かが変わるわけではありません。 ですから、たとえば代入であればキャストするのは代入先の型に合わせるだけです。 代入元は、アドレス値であろうが整数値であろうが、何でもいいのです。 質問者 補足 2011/03/04 20:42 代入先の型はintでいいのでしょうか?環境によって切り捨てられてしまわないでしょうか? 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 Tacosan ベストアンサー率23% (3656/15482) 2011/03/04 20:34 回答No.1 質問の意味が分かりません. そのまま「ポインタ」として使ってはいけないのですか? 質問者 補足 2011/03/04 20:43 ポインタが指しているアドレスを使いたいのです。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピュータープログラミング・開発C・C++・C# 関連するQ&A isoファイル作成 教えてください。 Windows7 32bitの環境では、ImgTool Classicで 作成していましたが、Windows7 64bitにOSを変更したので、 ImgTool Classicが、対応してないので使用できなくなりました。 64bitの環境で、使用できる同様のソフトを教えてください。 よろしくお願いします。 windows7 64bitでamplitube3は動作しますか? windows7 64bitでamplitube3は動作しますか? 新しいPCを購入しようと検討中なのですが、現在ほとんどのPCは64bitです。 amplitube3は4月ごろは動作しませんとのことでしたが、現在はどうなのでしょうか? amplitubeの動作環境では Windows 7の64bit版では、32bit互換での動作となります(要32bit対応ホスト) と書かれているのですが、32bit対応ホストとは何でしょうか? PCによっては動作しない可能性があるということでしょうか? void*型をキャストしたい。 void*型をdoubleにキャストしたいのですが方法がわかりません。 何かインクルードなども必要でしょうか? ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム 64bitのOSと64bit対応ソフトとの関係 windows7 64bit版などの64ビットOSで、過去に使っていたソフトが動かない場合があるなど注意点をよく見かけますが、 windows XP等で動いていた過去のソフトってのは32bit対応じゃないかなと思うんですが 現状、64bitのOSでも動く過去のソフトはすべて32bit/64bitどちらにも対応しているてことなんですよね? では実際64bit対応のソフトだと32bitでも動くソフトだとしても全て64bitで処理されているのでしょうか? よく64bitネイティブなんとかだとか64bitの恩恵を受けるだとか、64bitに最適化されているとか、そういう言葉を見かけますが 64bit OSとアプリケーションソフトの32bit/64bit対応との関係がいまいちつかめません。 どなたか、わかりやすくイメージできるように説明していただけませんでしょうか? windows7の64bitと32bitで windows7の64bitと32bitで 私のパソコンはwindows7の64bitを入れています。 32bit対応のwebカメラを買ってしまったのですが、これは使えないのでしょうか? WOW64なるものが入っているので32bitのものも使えると聞いたのですが、USBをつなぐと、デバイスが正しくインストールされませんでしたとなるのですが……。 PCの型 こんにちは。 ドコモのネット回線サービスを購入する為に、自分のPCが対応しているか知りたいです。 写メのPCはWindowsの何という型でしょうか? だいぶ古いと思います… 回答をお願いします! 32bit-64bitマルチブート環境でpstファイル共有 現在、Windows XP 32bitとWindows Vista 32bitのマルチブートしており 両環境でOutlook 2003を使用しメールの同期がとれるよう【pst】の共有をしています。 近いうちにWindows VistaをWindows 7 64bitへ移行予定で Windows XP 32bitとWindows 7 64bitのマルチブート環境となります。 Windows 7 64bitにはOutlook2007をインストール予定で、この64bit OSで作成したpstファイルは、32bitのXP上のOutlook2003で読み込むことは可能なのでしょうか? まとめるとこのような感じの予定です。 環境1:Windows XP 32bit & Outlook2003 環境2:Windows 7 64bit & Outlook2007 お解りになる方がいましたら回答をお願いします。 型について Cの型の中にint と long int がありますけどこの違いは何なのでしょうか?本にはどちらも4ビットの整数(long intは長整数となっていますが)-2147486648~2147483647となっていますが・・。 同様にdouble と long double は何が違うのでしょうか? 初歩的なところですがよろしくおねがいします。 windows7 64bitのXPモード windows7 64bitのXPモードは32bitになるそうですが、XPモードを使えば、windowsXP32bit対応のプリンターが使えるようになりますか? windowsXP32bit対応のプリンターが使えないので、windows7 Home Prenium 64bit 版をアップグレードしようかどうか迷っています。 7 32bit→10 32bitを64bitに Windows7 32bitがインストールされていたノートパソコンを Windows10 32bitにアップグレードしました。 メモリが8GBなので、 Windows64bitにしたいと思っているのですが、 無償アップグレードのようなもので、 32bitから64bitにすることはできますか? CPUがあまり速くないパソコン( 64bitには対応しているMB CPUです) なので、新たにWindowsを購入するのであればあきらめようと思っています。 できる手段があるとすれば、 クリーンインストールなどはすぐできます。 よろしくお願いします 32bitでAdobe After Effects お世話になります。 Windows7で32bitのパソコンにAdobe After Effectsをインストールする事は出来ませんか? After Effectsが32bitに対応してない場合はwindows7 32bitからwindows10の64bitにアップグレードするなどの手段になると思うんですが、3GBのメモリでも動くでしょうか?(After Effectsの推奨環境は4GB以上となってます) 無線LAN子機のドライバインストールができない場合の対応を教えてください。 「WZR2-G300N」を使っているのですが、OSのWindows Vistaが64bitのため、ドライバが64bitに対応しておらず、インターネットが使えません。とても困っています。 一応、もう1つのパソコンが使える環境ではあります。 64bit対応のドライバファイルなどはあるんでしょうか?ないのならば、多少お金を払ってもいいので、新しい無線LAN買う以外に何か方法はないのでしょうか?子機を変えるだけでいいなら、どのようなものがいいか教えてください。よろしくお願いします。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム ビット操作 「ビット操作を用いて素数を調べたい」です。 unsigned 型の配列bit[16]を用いてビット操作によって素数を調べたいのですが、 例えば、bit[0]からbit[1]への移動方法?を教えてください。 利用可能なODP.NETを教えて ■DBサーバ Windows Server 2003 Oracle 9i R2(9.2.0.1.0) ■アプリケーション動作環境(複数OS) Windows Server 2012 Std(64bit) Windows 7(64bit) Windows 7(32bit) Windows XP(32bit) VB.net(.Net Framework 4.0)(32bitアプリ) 上記のアプリケーション動作環境からOracle 9iR2へODP.NETを使って 接続したいのですが、利用可能なODP.NETのバージョン(何bit版)はど れでしょうか。 windows vista からwindows 7 今は32bitのwindows vistaを使っていますが、windows 7をインストールしようと思っています。 この場合、32bitか64bit、どちらのwindows 7をインストールすべきでしょうか? パソコンが64bitに対応していることは確認しましたが、今までどおり使えるかが不安です。 また、インストールする際に必要なものがあれば教えて欲しいです。 Javaの型拡張について 現在、Javaの勉強をしています。 型拡張が理解できません。 以下の場合、float型(32ビット)に拡張されるようですが、 私の理解では、一番大きな型はlong型(64ビット)なので、long型だと考えています。 float型に拡張される理由を説明して下さる方お願いします。 次の式全体の型は何になるのか答えなさい。 char ch; shot s; long l; float f; f / ch - (s * l); よろしくお願いします。 SSDにWindows7を新規インストール 現在HDD環境にてWindows7 32bit(OME)を入れて使ってます。 しかし、新しくSSDを買ったのでそこにWindows7の64bit Upgrade版を入れようと思っているのですが、 32bitOME版をSSDにコピーし、Windows7 64bit Upgrade版をインストール後、入れクリーンインストールをしたいと思っていますが、OME版という点がひっかかっております。 これのような作業は可能でしょうか? また、もっと簡単に、買ったSSDに新規Windows7 64bit環境をそろえることができますか? 簡単な流れは HDD→SSD→32bitから64bitにアップグレード→クリーンインストール という手順です。 回答よろしくお願いします。 Windows7の64bit版でプログラム開発環境を整えるには Windows7の64bit版でプログラム開発環境を整えるには Phoenix001と申します。 早速質問に入らせて頂きます。 プログラミング初心者で、Windows7の64bit版でC言語、Java、Objective-Cなどの開発環境を整えたいのですが何かオススメのソフトはありますでしょうか? 正直、「MinGW」などプログラミングの定番ソフトはbeta版だったりなど、Windows7の64bitにはあまり対応していないものが多く困惑しています。 ソフトはなるべくフリーソフトだと助かります。 漠然とした質問で失礼なのですが、回答宜しくお願い致します。 ********************************************************* OS:Windows7 Home Premium 64bit C言語の型キャスト C言語入門者です、よろしくお願いします C言語の型キャストについて教えてください 参考サイトで以下のようになってました char str[8] = "ABC"; char *ptr; ptr = (char*)str; printf("char型ポインタのアドレス先の値は: %s\n", ptr); この型キャストって意味ありますか? キャストしようがしなかろうがptrに収まるのはstrの先頭アドレスですよね? ただ型キャストを説明するためだけにこのような形にしているのか 意味がある型キャストなのかが解らず迷ってます 64bit OSに32bit office http://www.senko-corp.co.jp/software/DS/MathType_Win.html このソフトウェアですが、 Windows 7 64bitには対応しているが64 bit のMS office 2010には対応していないそうです。 Windows 7 64bitにのMS office 2010 32 bitってインストールできますか? インストール時にそういう選択画面がありましたでしょうか? 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ [技術者向] コンピューター プログラミング・開発 Microsoft ASPC・C++・C#CGIJavaJavaScriptPerlPHPVisual BasicHTMLXMLCSSFlashAJAXRubySwiftPythonパフォーマンス・チューニングオープンソース開発SEOスマートフォンアプリ開発その他(プログラミング・開発) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など
お礼
回答ありがとうございました。 またすこし理解が深まりました。