[위 에] 데이터 정렬

990 단어
네트워크 에서 전송 데이터 의 크기 를 계산 하 는 것 도 중요 하 다. 데 이 터 를 어떻게 저장 하 는 지 잘 알 고 얼마나 큰 공간 을 분배 하여 데이터 구 조 를 저장 해 야 전송 내용 이 틀 리 지 않도록 할 수 있다. 다음은 간략하게 하나, 둘 을 셀 수 있다.
#include<iostream>
#include<string>
#include<vector>
using namespace std;

struct hh
{
	char a;    //                        1    0(  ),     1,0/1  ,
		       //    ,               
	int b;     //2.    0+1,1/4   ,       3   ,   4,  4  
	double c;  //3.    0+1+3,4/8   ,    4   ,   8,  8  
			   //4.           0+1+3+4+8=16,  3          
	
};
int main()
{
	cout<<sizeof(hh)<<endl;
	system("pause");
	return 0;
}

1) 정렬: 구조 중의 모든 구성원 의 시작 주 소 는 글자 길이 의 정수 배 이 고 4 바이트 가 넘 는 것 은 4 바이트 로 계산 해 야 한다.
struct A {
    char c;
    short h[2];
    int i;
};
12 바이트
CXHHHHXXIIII
2) 보완: 구조의 총 바이트 수 는 그 중에서 글자 길이 가 가장 큰 구성원 바이트 수의 정수 배 이 고 4 바이트 가 넘 는 것 은 4 바이트 로 계산한다.
struct A {
    int i;
    char c;
};
8

좋은 웹페이지 즐겨찾기