zzy-c

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
#define _CRT_SECURE_NO_WARNINGS 1

#include<stdio.h>
#include<string.h>
#include<assert.h>
#include <stdlib.h>     /* qsort */

int main()
{
    //sizeof(数组名)-数组名表示整个数组的-计算的是整个数组的大小
    //&数组名-数组名表示整个数组,取出的是整个数组的地址
    //除此之外其它,所有的数组名都是首元素的地址
    int a[] = { 1,2,3,4 };
    printf("%d\n", sizeof(a));//16 //16
    printf("%d\n", sizeof(a+0));//4 //8
    printf("%d\n", sizeof(*a));//4  //4
    printf("%d\n", sizeof(a+1));//4 //8
    printf("%d\n", sizeof(a[1]));//4 //4
    printf("---------------------\n");
    printf("%d\n", sizeof(&a));//4   //8
    printf("%d\n", sizeof(*&a));//16 //16
    printf("%d\n", sizeof(&a+1));//4 //8
    printf("%d\n", sizeof(&a[0]));//4   //8
    printf("%d\n", sizeof(&a[0]+1));//4 //8
    //字符数组
    char arr[] = { 'a','b','c','d','e','f' };
    printf("---------------------\n");
    printf("%d\n", sizeof(arr));      //6        //6
    printf("%d\n", sizeof(arr+0));    //4        //8
    printf("%d\n", sizeof(*arr));      //1        //1
    printf("%d\n", sizeof(arr[1]));      //1        //1
    printf("%d\n", sizeof(&arr));      //4        //8
    printf("%d\n", sizeof(&arr+1));      //4        //8
    printf("%d\n", sizeof(&a[0] + 1));//4        //8
    printf("-----------------------\n");

    printf("%d\n", strlen(arr));    //随机值
    printf("%d\n", strlen(arr+0));  //随机值
    printf("%d\n", strlen(*arr));    //报警
    printf("%d\n", strlen(arr[1])); //报警
    printf("%d\n", strlen(&arr));    //随机值
    printf("%d\n", strlen(&arr+1));    //随机值
    printf("%d\n", strlen(&arr[0]+1));//随机值

    return 0;
}

 

posted on 2022-04-09 16:13  zzy_C  阅读(276)  评论(0)    收藏  举报