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


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

【初心者歓迎】C/C++室 Ver.35【環境依存OK】



1 名前:デフォルトの名無しさん mailto:sage [2007/02/19(月) 21:36:23 ]
エスケープシーケンスやWin32APIなどの環境依存な物でもOK。
ただしその場合、質問者は必ず、環境を書きましょう。
※sageは禁止です。
【前スレ】
【初心者歓迎】C/C++室 Ver.34【環境依存OK】
pc10.2ch.net/test/read.cgi/tech/1169039760/
【アップローダー】(質問が長い時はココ使うと便利)
kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm

352 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 14:03:04 ]
C言語を仮定するけど、ポインタは全部同じサイズだから相互にキャストできるよ。

> printf("un_str=%s\n",un_str);
%s は const char* 型の引数を期待するから、
*((const char*)un_str)という変換が行われることになる。
un_strが指してるのは"hoge"、つまり const char[] だから、問題なく変換できる。
他も同じ。

353 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 14:26:55 ]
> C言語を仮定するけど、ポインタは全部同じサイズだから相互にキャストできるよ。
現実には大抵そうなっているけど、規格上はそんな規定なんてないはず。

354 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 14:28:46 ]
そうだっけ?
んじゃvoid*の扱いはどうなるんだ?

355 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 14:29:45 ]
同じでない場合は、void*が一番でかいポインタのサイズ
そして使うときはキャストされるので問題なし

356 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 14:32:17 ]
昔懐かしい、farポインタ、nearポインタ、とか?

357 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 14:40:29 ]
残念ながら void* も void(*)() を保持できる保証はない。

358 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 14:42:58 ]
375<< インラインアセンブリならできるかも・・・

359 名前:デフォルトの名無しさん mailto:sage [2007/03/08(木) 14:45:19 ]
>>356
普通に char* と int* のサイズが違うようなアーキテクチャも存在した。






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

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

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