当前位置: 首页 > news >正文

阿里云腾讯云网站建设为什么需要响应式网站

阿里云腾讯云网站建设,为什么需要响应式网站,济南建设局,公司名称起名大全免费代码分析 9. 指针和数组代码解析一维数组字符数组字符串二维数组 10. 指针代码分析eg1eg2eg3eg4eg5eg6eg7eg8 10.1 指针进阶_数组指针 10.2 指针进阶_函数指针 9. 指针和数组代码解析 数组名arr是首元素地址 例外#xff1a; 1. sizeof(arr)#xff0c;计算整个数组的大小 1. sizeof(arr)计算整个数组的大小sizeof内部单独放一个数组名数组名表示整个数组。 2. arr取出的是 数组的地址。数组名数组名表示 整个数组。 除此1,2两种情况之外所有的数组名都表示数组首元素的地址一维数组 int a[] { 1,2,3,4 }; printf(%d\n, sizeof(a));//数组大小--4*416 byte printf(%d\n, sizeof(a0));//a首元素地址a0--4/8 byte printf(%d\n, sizeof(*a));//a首元素地址解引用*a首元素大小--4 byte printf(%d\n, sizeof(a1));//a1--4/8 byte printf(%d\n, sizeof(a[1]));//第二个元素大小--4 byte printf(%d\n, sizeof(a));//数组地址a--4/8 byte printf(%d\n, sizeof(*a)); //*a -- a -- 数组地址a解引用*a数组大小大小--16 byte //a -- int(*)[4] --类型 // -- *a -- a[4] 16 byte printf(%d\n, sizeof(a1));//相对于a跳过了整个数组地址大小--4/8 byte printf(%d\n, sizeof(a[0]));//首元素地址--4/8 byte printf(%d\n, sizeof(a[0]1));//第二个元素地址--4/8 byte字符数组 char arr[] {a,b,c,d,e,f}; printf(%d\n, sizeof(arr));//整个数组大小 -- 6 byte printf(%d\n, sizeof(arr0));//首元素地址 -- 4/8 byte printf(%d\n, sizeof(*arr));//首元素大小 -- 1 byte printf(%d\n, sizeof(arr[1]));//第二个元素大小 -- 1 byte printf(%d\n, sizeof(arr));//数组地址 -- 4/8byte printf(%d\n, sizeof(arr1));//相对于arr跳过了整个数组地址--4/8 byte printf(%d\n, sizeof(arr[0]1));//首元素地址1第二个元素地址--4/8 byteprintf(%d\n, strlen(arr));//strlen读到\0才结束统计\0前字符串个数随机值 printf(%d\n, strlen(arr0));//首元素地址arr0随机值 printf(%d\n, strlen(*arr));//errstrlen参数部分需要传地址 //*arr是首元素aa的ASCII码位97strlen从97开始统计字符串长度非法访问内存 printf(%d\n, strlen(arr[1]));//err printf(%d\n, strlen(arr));//arr -- char(*)[6]数组地址随机值 printf(%d\n, strlen(arr1));//随机值 printf(%d\n, strlen(arr[0]1));//第二个元素地址随机值char arr[] abcdef;//[a b c d e f \0] printf(%d\n, sizeof(arr));//数组大小 -- 7 printf(%d\n, sizeof(arr0));//首元素地址 -- 4/8 printf(%d\n, sizeof(*arr));//首元素 -- 1 //*arr -- *(arr 0) -- arr[0] printf(%d\n, sizeof(arr[1]));//第二元素 -- 1 printf(%d\n, sizeof(arr));//数组地址 -- 4/8 printf(%d\n, sizeof(arr1));//数组地址1 -- 4/8 printf(%d\n, sizeof(arr[0]1));//第二元素地址 -- 4/8printf(%d\n, strlen(arr));//数组地址 6 printf(%d\n, strlen(arr0));//首元素地址 6 printf(%d\n, strlen(*arr));//err 首元素a printf(%d\n, strlen(arr[1]));//err 首元素a printf(%d\n, strlen(arr));//数组地址 6 printf(%d\n, strlen(arr1));//数组地址1 random printf(%d\n, strlen(arr[0]1));//第二元素地址 5字符串 char* p abcdef;//[a b c d e f \0]p存放a的地址 printf(%d\n, sizeof(p));//指针p 4/8 printf(%d\n, sizeof(p1));//b的地址 4/8 printf(%d\n, sizeof(*p));//a 1 printf(%d\n, sizeof(p[0]));//a 1 //*p -- *(p 0) -- p[0] printf(%d\n, sizeof(p));//p的地址 4/8 //p -- char** printf(%d\n, sizeof(p1));//p的地址1 4/8 printf(%d\n, sizeof(p[0]1));//b的地址1 4/8printf(%d\n, strlen(p));//a的地址 6 printf(%d\n, strlen(p1));//b的地址 5 printf(%d\n, strlen(*p));//erra printf(%d\n, strlen(p[0]));//erra printf(%d\n, strlen(p));//p的地址 random printf(%d\n, strlen(p1));//p的地址1 random printf(%d\n, strlen(p[0]1));//b的地址 5二维数组 int a[3][4] {0}; printf(%d\n,sizeof(a));//数组a大小 3*4*448 printf(%d\n,sizeof(a[0][0]));//[0][0]元素 4 printf(%d\n,sizeof(a[0]));//[0]行数组大小 4*416 //每行都是二维数组的一个元素一维数组的数组 //a[0]是第一行一维数组的 数组名 printf(%d\n,sizeof(a[0]1));//第1行数组第二个元素地址 4/8 printf(%d\n,sizeof(*(a[0]1)));//第2行数组首元素大小 4 printf(%d\n,sizeof(a1));//a是首元素地址是第一行的地址a1是第2行地址 4/8 printf(%d\n,sizeof(*(a1)));//第2行数组大小 4*416 printf(%d\n,sizeof(a[0]1));//a是第1行的地址a1是第2行地址 4/8 printf(%d\n,sizeof(*(a[0]1)));//第2行数组大小 4*416 printf(%d\n,sizeof(*a));//第1行数组大小 4*416 //a 首元素地址第1行地址 //*a 第1行 //*a -- *(a0) -- a[0] printf(%d\n,sizeof(a[3]));//第4行数组大小 4*416 //a[3] -- int [4] //sizeof()只关注类型不会计算10. 指针代码分析 eg1 int main() { int a[5] { 1, 2, 3, 4, 5 };int *ptr (int *)(a 1);//a 取出 数组地址a1 向后跳一个数组长度 的地址printf( %d,%d, *(a 1), *(ptr - 1));//(a1) 首元素地址1第二元素地址。*(a1) -- 2//ptr 是a[5]向后跳一个数组长度 的地址//(ptr - 1) 向前访问4byte -- 5return 0; }eg2 //结构体的大小是20个字节 struct Test { int Num;//4char *pcName;//1short sDate;//2char cha[2];//1short sBa[4];//2 }*p (struct Test*)0x100000; //结构体Test类型的变量大小是20个字节 int main() { printf(%p\n, p 0x1);//跳过一个结构体 20byte//0x100000 0x000014 0x100014printf(%p\n, (unsigned long)p 0x1);//整形1byte -- 0x100001printf(%p\n, (unsigned int*)p 0x1);//跳过4byte -- 0x100004return 0; }eg3 int main() { int a[4] { 1, 2, 3, 4 };//小端 [01 00 00 00| 02 00 00 00 00| 03 00 00 00| 04 00 00 00]int *ptr1 (int *)(a 1);//a 取出数组地址a1 向后跳一个数组长度 的地址int *ptr2 (int *)((int)a 1);//(int)a a地址的值 1byte printf( %x,%x, ptr1[-1], *ptr2);//%x -- 16进制打印//ptr1[-1] -- 4//*ptr2 -- 01 |00 00 00 02| --2000000return 0; }eg4 #include stdio.h int main() { int a[3][2] { (0, 1), (2, 3), (4, 5) };//(0,1) -- 1. {0,1} is right//{{1,3}, {5,0}, {0,0}};int *p;p a[0];//a是首元素地址即第一行地址a[0][0]的地址printf( %d, p[0]);//p[0] -- *(p0) --*p -- 1return 0; }eg5 int main() { int a[5][5]; int(*p)[4]; p a; printf( %p,%d\n, p[4][2] - a[4][2], // -4p[4][2] - a[4][2]); return 0; }-4 -- 10000000 00000000 00000000 00000100 11111111 11111111 11111111 11111011 1111 1111 1111 1111 1111 1111 1111 1100 F F F F F F F C 0xFFFFFFFCeg6 int main() { int a[2][5] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };int *ptr1 (int *)(a 1);//数组地址1跳过一个数组的大小int *ptr2 (int *)(*(a 1));//第一行地址1第二行地址,*解引用 -- a[1][0]//a 1 类型为 int (*)[5] 指向二维数组 a 的第二行//*(a 1) 表示指向二维数组 a 第二行首元素的指针它指向的是 a[1][0]//*(a 1) -- a[1]数组名 -- 首元素地址a[1][0]printf( %d,%d, *(ptr1 - 1), *(ptr2 - 1));//ptr1 -1 -- 10//ptr2 -1 -- 5return 0; }eg7 #include stdio.h int main() { char* a[] {work,at,sangfor};//char* p sangfor;//存放字符串首字符地址char** pa a;//pa存放数组名pa;// wo -- aprintf(%s\n, *pa);return 0; }eg8 int main() { char* c[] {ENTER,NEW,POINT,FIRST};//指针数组存放首字符地址char** cp[] {c3, c2, c1, c};char*** cpp cp;printf(%s\n, **cpp);//POINTprintf(%s\n, *--*cpp3);printf(%s\n, *cpp[-2]3);printf(%s\n, cpp[-1][-1]1);return 0; }printf(%s\n, ** cpp);//POINT 注意cpp值已经更改printf(%s\n, *--*cpp3);//ERprintf(%s\n, *cpp[-2]3);//STprintf(%s\n, cpp[-1][-1]1);//EW10.1 指针进阶_数组指针 10.2 指针进阶_函数指针
http://www.hkea.cn/news/14374537/

相关文章:

  • 电子商务网站网络拓扑wordpress漏洞改密码
  • 国外优惠卷网站如何做租赁模板建站 网站的名称归属
  • 平度168网站建设dw 8做的网站怎么上传
  • 网站作业代做h5响应式网站开发
  • 沈阳网站推广排名方案建站做网站
  • 成都专业制作网站公司徐州网络科技公司有哪些
  • 哈密网站制作公司-哈密网站建设|哈密网络公司|哈密做网站河北app在线下载
  • 烟台手机网站建设费用科讯怎么建设网站
  • 建设工程信息网为官方网站设计上海门票
  • 海报在线制作网站wordpress客户表单数据
  • 做网站需求方案商店网站在线设计
  • 怀化高速网站专业的公司网站开发
  • 成都青羊区网站建设商城网站怎么做内链
  • 网站怎么搜网站建设多少钱合适
  • 郑州电力高等专科学校官网优化建议
  • 基于php旅游网站开发源代码wordpress官网模板
  • 网络公司网站赏析地图标注收费属于违法行为吗
  • 湖南岳阳网站建设公司黄页顺企网保定网站建设冀icp
  • 语言 网站开发好123网址之家
  • 网站开发宣传方法wordpress页眉插件
  • 郑州公路建设有限公司网站网站广告制作
  • seo信息网网站seo方案案例
  • 网站做支付宝接口吗最新wordpress教程视频
  • 建设部网站中煤三建深圳网络公司招聘
  • 吉林平台网站建设多少钱苏州互联网公司多吗
  • 公司活动策划方案怎么做seo优化网站建设哪家好
  • 建立个人网站能干anwsion wordpress
  • 创意江苏网站建设东莞市网站seo
  • f型网站安徽网站建设电话
  • 阐述网站建设的步骤过程繁峙做网站建设