社区
C语言
帖子详情
请问void *和void **分别有什么用?
sigh02
2002-11-11 09:52:07
能详细说说吗?
...全文
123
2
打赏
收藏
请问void *和void **分别有什么用?
能详细说说吗?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiaoniaoleyuan
2002-11-11
打赏
举报
回复
void * 是空类型指针,它可以被任何数据指针类型的地址值赋值(函数指针不能赋值给它),例如:
//void * 可以持有任何指针类型的地址值
void * p=q;
p=p1;
void * 表明相关的值是个地址,但该地址的对象类型不知道,不能操作空类型指针所指向的对象,只能传送该地址值或将它与其它地址值作比较。
black_snail
2002-11-11
打赏
举报
回复
有个东东是哦void类型的,它存在一个地址单元里,
有各指针指向它,当然指针它也存在一个地址单元里,void*
然后,另一个指针又指向前一个指针,当然最后这个指针它也存在一个地址单元里。void**
车票管理系统程序(车次的查询等)
enum {FALSE,TRUE}; struct time { int hour; int minutes; }; struct ticket { int SerialNumber; struct time SetOut; char DeparturePoint[MAX]; char TerminalPoint[MAX]; float LastTime; int FixNumber; int FixedNumber; }car[N]; int RecordNumber; int FLAG=FALSE; /**********************************************/ int ShowMessage(
void
); //载入原始数据
void
mainmenu(
void
); //主菜单
void
InsertMessage(
void
); //录入班次信息
void
SearchMenu(
void
); //查询路线子菜单
void
SearchByNumber(
void
); //按班次号查询
void
SearchByAddress(
void
); //按终点站查询
void
TicketManagement(
void
); //车票售出与退回
void
TicketOrder(
void
); //售票
void
TicketDelete(
void
); //退票
void
exitSys(
void
); //退出该系统 /********************************************/ int main(
void
)
Apple IAP范例
苹果iOS IAP范例代码 #import #import @interface CBiOSStoreManager : NSObject { int buyType; NSString* _buyProductIDTag; } + (CBiOSStoreManager*) sharedInstance; - (
void
) buy:(NSString*)buyProductIDTag; - (bool) CanMakePay; - (
void
) initialStore; - (
void
) releaseStore; - (
void
) requestProductData:(NSString*)buyProductIDTag; - (
void
) provideContent:(NSString *)product; - (
void
) recordTransaction:(NSString *)product; - (
void
) requestProUpgradeProductData:(NSString*)buyProductIDTag; - (
void
) paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions; - (
void
) purchasedTransaction: (SKPaymentTransaction *)transaction; - (
void
) completeTransaction: (SKPaymentTransaction *)transaction; - (
void
) failedTransaction: (SKPaymentTransaction *)transaction; - (
void
) paymentQueueRestoreCompletedTransactionsFinished: (SKPaymentTransaction *)transaction; - (
void
) paymentQueue:(SKPaymentQueue *) paymentQueue restoreCompletedTransactionsFailedWithError:(NSError *)error; - (
void
) restoreTransaction: (SKPaymentTransaction *)transaction;
【IOS一气呵成】之IAP集成:内购和内购恢复 DEMO
博文地址:http://blog.csdn.net/vkenchen/article/details/24122345#t18 #import #import #import @class RMIAPHelper; @protocol RMIAPHelperDelegate //购买 -(
void
)requestProduct:(RMIAPHelper*)sender start:(SKProductsRequest*)request; -(
void
)requestProduct:(RMIAPHelper*)sender received:(SKProductsRequest*)request; -(
void
)paymentRequest:(RMIAPHelper*)sender start:(SKPayment*)payment; -(
void
)paymentRequest:(RMIAPHelper*)sender purchased:(SKPaymentTransaction*)transaction; -(
void
)paymentRequest:(RMIAPHelper*)sender restored:(SKPaymentTransaction*)transaction; -(
void
)paymentRequest:(RMIAPHelper*)sender failed:(SKPaymentTransaction*)transaction; //恢复 -(BOOL)restoredArray:(RMIAPHelper*)sender withArray:(NSArray*)productsIdArray; //其他 //不支持内购 -(
void
)iapNotSupported:(RMIAPHelper*)sender; @end @interface RMIAPHelper : NSObject +(RMIAPHelper*)sharedInstance; @property(nonatomic,assign) id delegate; -(
void
)setup; -(
void
)destroy; -(
void
)buy:(NSString*)productId; -(
void
)restore; @end
粒子系统简单框架实现
粒子系统的一个简单框架 class CParticleSystem; class CParticle { public: enum TYPE { VISTUAL, PARTICLE_SYSTEM }; public: CParticle(
VOID
); virtual ~CParticle(
VOID
); public: INT liveFrame; // 生存时间 INT indexFrame; // 贞索引 BOOL isKeepLocal; // 保持本地坐标 // 说明: 相对于发射他的发射器而言 VEC3 scale; // 缩放 VEC3 position; // 位置 QUAT orientation; // 朝向 VEC4 color; // 颜色 VEC2 uvOffset; // 纹理坐标偏移 VEC3 velocity; // 速度 public: CParticle *pNext; // 链接下一个粒子 public: CEmitterBase *pEmitter; // 发射器指针 CParticleSystem *pEmitParticleSystem; // 发射的粒子系统 }; class CParticleSystem { public: typedef std::vector EmitterSet; typedef std::vector AffectorSet; public: CParticleSystem(
VOID
); virtual ~CParticleSystem(
VOID
); public:
VOID
SetParticleQuota(INT quota, CParticle::TYPE type, const CHAR *szParticleSystem); // 设置粒子总量 INT GetParticleQuota(
VOID
) const; // 获得粒子总量 public:
VOID
SetGfx(CGfxBase::TYPE type); // 设置图形 CGfxBase* GetGfx(
VOID
) const; // 获得图形 public: CEmitterBase* AddEmitter(CEmitterBase::TYPE type); // 添加发射器
VOID
RemoveEmitter(CEmitterBase *pEmitte
MFC俄罗斯方块包括方块类
const int BLOCK_LINE = 20;//当前地图的行数 const int BLOCK_ROW = 10;//当前地图的列数 class CBlock { public: CBlock(
void
); ~CBlock(
void
); private: // 当前方块形状 int m_BlockShape; //下一个方块形状 int m_nextBlockShape; //当前方块状态 int m_BlockState; //等级 int m_BlockLevel; //当前可消行数 int m_BlockCurDelLine; //游戏是否在执行 bool m_blockRunning; //当前方块位置 POINT m_BlockPos[4]; //下个方块位置 POINT m_nextBlockPos[4]; //当前的屏幕状态 //BLOCK_LINE是行数,BLOCK_ROW是列数 int m_Blockmap[BLOCK_LINE][BLOCK_ROW]; public: // 初始化游戏
void
BlockInit(
void
); private: // 记录方块图形 CBitmap m_bmpBlock[7]; public: //创建一个新的方块出来,这里只给方块形状赋值
void
CreateNewBlock(
void
); private: //这里给方块位置赋值, //shape是形状, pt[]是用来接收方块坐标的(方块形状的排列坐标)数组 //xPos是偏移量,就是方块显示位置和方块显示的框的最左边的差
void
MakeNewBlock(int shape, POINT pt[], int xPos); public: //将方块画在对应的DC上
void
DrawBlock(CDC* pDC); //方块的下落过程,主要部分
void
BlockDropDown(CDC* pDC); private: // 隐藏方块
void
HideBlock(CDC* pDC); // 背景图片变量 CBitmap m_bmpBKGND; public: // 画下个方块的框框
void
DrawNextBlock( CDC* pDC ); //方块左移
void
BlockLeft(CDC* pDC); //方块右移
void
BlockRight(CDC* pDC); //方块下移
void
BlockFastDown(CDC* pDC); //方块变形
void
ChangeState(CDC* pDC); // 消除一行 //pDC是传入的DC //LineNum是消除的行从第几行开始(我这里是最上面为0,最下面为19) //start是 游戏是否是要把消除行以上的都置0,我是用在OnDraw()里,用来重画屏幕的,
void
DeleteLine(CDC* pDC, int LineNum, bool start); // 游戏是否结束,true=结束了 bool BlockGameOver(
void
); // 计分板 //del是决定是否是已消一行的
void
BlockScore(int del, CDC* pDC); //返回是否升级了,true=升级了 bool BlockLevelUp(
void
); //返回下落速度 int BlockSpeed(
void
); };
C语言
70,035
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章