void* – プログラミング – Home

通知
すべてクリア

void*


森田
 森田
(@森田)
ゲスト
結合: 23年前
投稿: 1
Topic starter  

初めまして。

一般的な演算式で

A += B → A = A + B ですよね?

でも、もしAがvoid* Aの場合、コンパイルエラーが発生します。
本来はキャストすれば済む問題だと思うのですが
今回使用するものがAを1バイトのChar型で計算しなくてはなりません。

A = (char*)A + B でコンパイルは通るのですが
明らかに左辺がポインタでないので、中身が異常です。
どうすれば、上の演算式が成り立つのでしょうか?


引用解決済
トピックタグ
YuO
 YuO
(@YuO)
ゲスト
結合: 24年前
投稿: 252
 

> でも、もしAがvoid* Aの場合、コンパイルエラーが発生します。

void *に対して行える演算は比較とキャスト,否定のみです。

> 今回使用するものがAを1バイトのChar型で計算しなくてはなりません。

なら,void *ではなくchar *やunsigned char *で処理すればよいのでは?

> 明らかに左辺がポインタでないので、中身が異常です。

どの式における左辺でしょうか。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました