Visual C++에서는 프로젝트의 속성 페이지에서 구조체 멤버 인 alignemnt를 선택합니다. 문제는이 구성이 프로젝트의 모든 srtruct에 사용되고 있다는 것입니다. 특정 구조체의 멤버 정렬을 개별적으로 설정하는 방법은 무엇입니까 (VC++ 특정, 추측)? 당신은 정렬이 사용자의 요구에 맞을 때까지 그래서, 다양한 필드 사이에 몇 가지 더미 바이트
'aligned (16)'속성을 사용하여 함수를 16 바이트 경계로 바이트 정렬하려고합니다. 나는 한 다음 void __attribute__((aligned(16))) function() { } (출처 : http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html) 을하지만 (GCC foo.c를;로 사용하는 메
C (예 : 캐시 라인 경계)의 특정 경계에 맞춰진 메모리를 어떻게 할당합니까? 나는 적어도 32 비트와 64 비트 아키텍처 사이에서 가능하면 휴대 할 수있는 구현과 같은 malloc/free를 찾고있다. 편집 추가 : 다른 말로하면, 나는 (지금 무용지물이 되겠습니까?) memalign과 같이 동작할만한 기능을 찾고 있습니다.이 기능은 무료로 사용할 수
바이트 코드 인터프리터의 바이트 코드를 구현하는 모든 코드가 포함 된 C 함수가 있습니다. 고정 크기 경계에서 컴파일 된 코드의 세그먼트를 정렬하여 바이트 코드의 값에서 바로 이동할 주소를 계산할 수 있는지 궁금합니다. 배열이 작동하는 것과 같은 방식으로 정렬되지만 계산 된 주소에서 읽는 대신 점퍼로 이동합니다. 나는 모든 "바이트 코드"세그먼트의 끝 부분
sbrk를 사용하여 비교적 기본적인 메모리 할당자를 작성했습니다. 나는 메모리 덩어리를 요구하고, 65k라고 말하고 동적 메모리를 요구하는 변수에 대해 필요에 따라 그것을 조각 낸다. 65k 블록에 메모리를 다시 추가하여 메모리를 확보합니다. 65k 블록은 sizeof (16 바이트) 유니온에서 파생됩니다. 그런 다음 블록을 16 바이트 경계까지 정렬합니다