《c专家编程》笔记--如何使用赋值语句拷贝整个数组的值

将数组放到结构体中,直接使用“=”就能将数组中的值全部拷贝到其他相同类型的数组中。

#include <stdio.h>

struct array_tag{
        int a[10];
};

int main(void){
        struct array_tag m = {{1,2,3,4,5,6,7,8,9,0}};
        int i;
        for(i=0;i<10;i++){
                printf("%d ",m.a[i]);
        }
        printf("\n");

        struct array_tag n = m;
        for(i=0;i<10;i++){
                printf("%d ",n.a[i]);
        }
        printf("\n");
        return 0;
}

运行结果为:

1 2 3 4 5 6 7 8 9 0
1 2 3 4 5 6 7 8 9 0


注意:如果结构体中包含指针,则意味着任何指针成员的副本都和原指针指向同一地方(浅拷贝)。换言之,任何指针指向的

内容都没有复制。

你可能感兴趣的:(《c专家编程》笔记--如何使用赋值语句拷贝整个数组的值)