您的位置:首页 > 健康 > 美食 > 网页设计与制作的公司_开发一个小程序需要多少钱_网站建设公司官网_软文推广的标准类型

网页设计与制作的公司_开发一个小程序需要多少钱_网站建设公司官网_软文推广的标准类型

2024/12/27 13:06:20 来源:https://blog.csdn.net/2401_87491435/article/details/143261313  浏览:    关键词:网页设计与制作的公司_开发一个小程序需要多少钱_网站建设公司官网_软文推广的标准类型
网页设计与制作的公司_开发一个小程序需要多少钱_网站建设公司官网_软文推广的标准类型

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

//int main()
//{
//    int a = 0;
//    int* pa = &a;//pa是指针变量
//    *pa = 20;
//    printf("%d\n", a);
//
//    char ch = 'w';
//    char* pc = &ch;     //指针类型的意义:1.决定了指针+1或-1的操作时,会跳过几个字节
//                        //                2.决定了解引用操作时的权限    
//    
//                        
//    //数组名:
//    //1.数组名在大部分情况下表示:数组首元素的地址
//    //但是有两个例外:下面两种情况数组名表示整个数组
//    // a) sizeof(数组名)
//    // b) &数组名
//    //2.&数组名:取出的是数组的地址
//
//    int arr[10] = { 1,2,3 };
//    int (*parr)[10] = &arr;//parr就是数组指针:指向数组的指针
//
//    return 0;
//}

//函数指针
//函数也是有地址的
//int Add(int x, int y)
//{
//    return x + y;
//}
//
//int main()
//{
//    printf("%p\n", &Add);
//
//    int (*pf)(int, int) = &Add;
//    //函数的地址存放到函数指针变量中
//    //int sum = (*pf)(2, 3);
//    int sum = pf(2, 3);
//    printf("%d\n", sum);
//    
//    return 0;
//}

//函数指针数组:
//int (*pfArr[4])(int, int);
//pfArr数组的每个元素类型是int(*)(int, int)

//函数指针实现回调函数:
//通过函数指针调用的函数就是回调函数

//qsort - 使用冒泡排序的思想,模拟实现了qsort函数
//1.qsort怎么使用
//2.知道qsort怎么使用回调函数实现的通用排序


//
//数组名的理解
//指针的运算和指针类型的意义
//
int main()
{
    int a[] = { 1,2,3,4 };

    printf("%d\n", sizeof(a));//16
    //sizeof(数组名),数组名表示整个数组,计算的是整个数组的大小,单位是字节
    printf("%d\n", sizeof(a + 0));//4或8
    //a不是单独存放在sizeof内部,也没有取地址,所以a就是首元素的地址,a+0还是首元素的地址
    //是地址,大小就是4或8个字节
    printf("%d\n", sizeof(*a));//4
    //*a中的a是数组的首元素地址,*a就是对首元素的地址解引用,找到的就是首元素
    //首元素的大小就是4个字节
    printf("%d\n", sizeof(a + 1));//4或8
    //这里的a是数组首元素的地址
    //a+1是第二个元素的地址
    //sizeof(a+1)就是地址的大小
    printf("%d\n", sizeof(a[1]));//4
    //计算的是第二个元素的大小
    printf("%d\n", sizeof(&a));//4或8
    //&a取出的是数组的地址,数组的地址,也就是个地址
    //是地址,大小就是4或8个字节
    printf("%d\n", sizeof(*&a));//16
    //*和&抵消了,*&a就相当于a
    //&a得到的是数组的地址,类型是int(*)[4],是一种数组指针
    //数组指针解引用找到的是数组
    printf("%d\n", sizeof(&a + 1));//4或8
    //&a取出的是数组的地址,类型是int(*)[4]
    //&a+1是从数组a的地址向后跳过了一个有4个整型元素的数组的大小
    //还是一个地址,大小就是4或8个字节
    printf("%d\n", sizeof(&a[0]));//4或8
    //&a[0]就是第一个元素的地址
    //计算的就是地址的大小
    printf("%d\n", sizeof(&a[0] + 1));//4或8
    //&a[0]+1是第二个元素的地址
    //大小是4或8个字节
    
    return 0;
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com