2 개의 float 변수를 포함하는 구조체를 2 개의 int 변수를 포함하는 다른 구조체에 memcpy 할 수 있는지 여부를 알고 싶습니다. 이것은 내가 지금까지 가지고있는 것이다.int float float float
struct stFloat
{
float a;
float b;
};
struct stInt
{
int a;
int b;
};
int main()
{
struct stFloat aa;
aa.a=12.234;
aa.b=673.797;
struct stInt bb;
memcpy(&bb,&aa,sizeof(stFloat));
printf("%d %d\n",bb.a,bb.b);
return 0;
}
그러나 불행히도 나는 원하는 결과를 얻지 못하고있다. 내가 기대했던 출력은 이지만 출력은 약간의 쓰레기처럼 보입니다. 누군가이 문제를 해결하는 데 도움을 줄 수 있습니까?
감사
왜 그 결과를 기대 했습니까? –
@Oliver 정수 부분 만 복사 될 것이라고 생각했습니다. – Harry
'a = b;'는'memcpy (& a, & b, ...);'와 같지 않습니다. –