转换为非标量类型

时间:2014-04-18 13:04:12

标签: c struct casting

这一行编译正常:

memcpy(&rp.iplow, &((struct sockaddr_in*) &dstl)->sin_addr, 4);

而我最初创造的是:

memcpy(&rp.iplow, &((struct sockaddr_in) dstl).sin_addr, 4);

会说error: conversion to non-scalar type requested

我可以断定,不能使用结构类型进行投射吗?

1 个答案:

答案 0 :(得分:2)

是的,您可以断定结构类型无法直接转换。所以你必须按照你写的第一行所示输入它。