struct Mystruct {
int a;
int b;
int c;
int d;
int e;
int f;
int g;
};
int main() {
Mystruct* m1 = (Mystruct*)malloc(1);
m1->a = 10;
cout << m1->a << endl;
free(m1);
return 0;
}
저 구조체가 필요한 메모리가 최소 28byte이잖아요?
근데 malloc으로 1byte만 줬는데 왜 잘작동하나요?
2년간 GC언어만 했는데 이해가 안가요...
c++에서 malloc쓰지 마셈
new 쓰라는건 알겠는데,왜 저게 작동할까요
제 환경에선 안돼요 implementation(컴파일러or OS)가 똑똑하거나 중간에 매핑방식을 쓰는 환경일수도 있어요
ㄴ컴파일러마다 다른가보네요...g++ 로 하는데 작동잘하길래...
해당 댓글은 삭제되었습니다.
으흠..c++은 참어렵네요