相关疑难解决方法(0)

结构填料和包装

考虑:

struct mystruct_A
{
   char a;
   int b;
   char c;
} x;

struct mystruct_B
{
   int b;
   char a;
} y;
Run Code Online (Sandbox Code Playgroud)

结构的尺寸分别为12和8.

这些结构是填充还是包装?

什么时候进行填充或包装?

c struct structure packing padding

189
推荐指数
6
解决办法
25万
查看次数

为什么*curr和curr-> val值相同?

考虑:

#include<stdlib.h>
#include<stdio.h>

struct node {
    int val;
    struct node *next;
};

typedef struct node item;

void main() {
    item * curr, *head;
    int i;

    head = NULL;
    for (i = 1; i <= 10; i++) {
        curr = (item *)malloc(sizeof(item));

        curr->val = i;
        curr->next = head;
        head = curr;
    }

   curr = head;
   while (curr) {
        printf("%d\n", curr->val);
        printf("%d\n", *curr);
        curr = curr->next;
   }

   getchar();
}
Run Code Online (Sandbox Code Playgroud)

当我打印出来,*curr并且curr->val是相同的.为什么?

我很困惑*curr.我认为*curr是值得&curr指出的.(我是C的新手)

c pointers linked-list

5
推荐指数
2
解决办法
243
查看次数

标签 统计

c ×2

linked-list ×1

packing ×1

padding ×1

pointers ×1

struct ×1

structure ×1