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

贵港网站推广本地免费发布信息网站

贵港网站推广,本地免费发布信息网站,亳州电商网站建设,工程造价复习 sizeof 有关sizeof 在上一张中已经已经讲解了 在本章进行复习,更深入了解sizeof 的计算 请各位读者老爷进行计算一下。看看各位的实力。 题目如下: int main() {char arr[] { a,b,c,d,e,f };printf("%zd\n", sizeof(arr));printf…

复习 sizeof

有关sizeof  在上一张中已经已经讲解了

在本章进行复习,更深入了解sizeof 的计算 

请各位读者老爷进行计算一下。看看各位的实力。

题目如下:

int main()
{char arr[] = { 'a','b','c','d','e','f' };printf("%zd\n", sizeof(arr));printf("%zd\n", sizeof(arr + 0));printf("%zd\n", sizeof(*arr));printf("%zd\n", sizeof(arr[1]));printf("%zd\n", sizeof(&arr));printf("%zd\n", sizeof(&arr + 1));printf("%zd\n", sizeof(&arr[0] + 1));return 0;
}

公布答案:

1. sizeof(arr)    arr是数组名,单独放在sizeof内部.计算的是数组的大小  - 6 (a,b,c,d,e,f)六个

2. sizeof(*arr+0) arr是数组名,是数组首元素的地址, arr+0也是数组首元素的地址,是地址就是  4 /  8(在两种的环境下答案不一样)x64  x86

3.  sizeof (*arr)  arr是数组首元素的地址,*arr就是首元素.大小是1个字节

4.  sizeof(arr[1])    arr[1]是第二个元素,大小是1个字节

5.  sizeof(&arr)   &arr是数组的地址,数组的地址也是地址,大小是  4  /  8个字节(同2)

6.sizeof (&arr +1)&arr是数组的地址, &arr + 1 就 是跳 过整个数组,指向了 f 的后面. 4  /  8个字节

7. sizeof(&arr[0] + 1)   & arr [0] + 1是第二个元素的地址,大小就是  4  / 8

strlen

接下来就是strlen函数了,还记得定义嘛?

  • strlen:

    • strlen是一个函数,用于计算以空字符\0结尾的字符串中的字符个数。
    • 不包括字符串末尾的\0字符。
    • strlen在运行时计算其值,因此需要包含string.h头文件。
    • 参数必须是字符型指针(char*),且必须是以\0结尾的字符串。

晓得了定义,那么上习题!!

如下: 
#include <string.h>int main()
{char arr[] = { 'a','b','c','d','e','f' };printf("%zd\n", strlen(arr));//随机值;arr是首元素的地址,数组中没有\0,一直往后找,什么时候遇到\0不清楚printf("%zd\n", strlen(arr + 0));//随机值;arr是首元素的地址,arr+1依然是首元素的地址printf("%zd\n", strlen(*arr));//*arr是首元素,是'a' - 97,传给strlen函数,97会被当做地址.以97作为地址,会形成非法访问,程序会崩溃printf("%zd\n", strlen(arr[1]));//arr[1]是第2个元素,就是'b' - 98,传给strlen函数,98会被当做地址.同上,程序崩溃printf("%zd\n", strlen(&arr));//&arr是数组的地址,虽然是数组的地址,值和首元素的地址样.strlen依然是从第一个字符的位置开始向后找\0,会得到随机值.printf("%zd\n", strlen(&arr + 1));//&arr + 1是f后面的地址,什么时候遇到\0,依然不知道.随机值.printf("%zd\n", strlen(&arr[0] + 1));//&arr[0]+1就是第二个元素的地址,得到的也是随机值return 0;
}
公布答案: 

1. 随机值 因为在本数组中没有\0所以说它会一直往后寻找直到\0。

2. 随即值  arr是首元素的地址,arr +0仍然是首元素的地址

3.  崩溃    *arr是首元素,是'a' - 97,传给strlen函数,97会被当做地址.,以97作为地址,会形成非法访问,程序会崩溃

4.崩溃    arr[1]是第2个元素,就是'b' - 98,传给strlen函数,98会被当做地址.同上,程序崩溃 

5.随机值   &arr是数组的地址,虽然是数组的地址,值和首元素的地址一样.strlen依然是从第一个字符的位置开始向后找\0,会得到随机值.

随机值  &arr + 1是f后面的地址,什么时候遇到\0,依然不知道,所以还是随机值.。

7.随机值  &arr[0]+1就是第二个元素的地址,得到的也是随机值

http://www.dtcms.com/wzjs/15242.html

相关文章:

  • 国外网站的正规黄站百度霸屏培训
  • 电子商务网站建设的开发背景怎么引流到微信呢
  • 网站主页调用株洲seo
  • 武汉网站建设的公司百度广告联盟
  • 手机页面网站模板怎么卖凡科网免费建站
  • 网站建设如何插入文字编辑器seo翻译
  • 做APP好还是建设网站好免费使用seo软件
  • 朝阳 手机网站 建设网络营销是干什么的
  • 网站改版目标品牌推广软文200字
  • 沧州哪里有做网站的公司4000-推广软文是什么
  • 北京旅游型网站建设山东免费网络推广工具
  • 营销型网站建设宣传语seo方案
  • 专业定制网站建设代理时事政治2023最新热点事件
  • 营口网站制作公司网站优化seo怎么做
  • 山东外贸网站推广今日热搜第一名
  • 平台代理推广想找搜索引擎优化
  • 虚拟主机网站建设步骤?网络营销有哪些方式
  • 汝南专业网站建设合肥网站seo
  • 品牌网络推广windows优化大师免费版
  • 服装公司网站策划书网络项目怎么推广
  • 网站建设费用多少钱深圳百度推广seo公司
  • 福田网站建设推荐如何自己建网站
  • 东莞外贸企业名单系统优化软件哪个最好的
  • 分析某个网站建设搜索引擎优化文献
  • 福建建设建设厅官方网站云和数据培训机构怎么样
  • 学做网站要学哪些网站的优化策略方案
  • 杭州哪里做网站手机360优化大师官网
  • 手机网站优点安卓优化大师手机版下载
  • 明年做那个网站能致富杭州网站优化体验
  • wordpress+展开seo是什么意思蜘蛛屯