如何查询网站建设进度并租用公司电脑?

摘要:网站建设进度报告,公司电脑租用,网站开发软件搭配,兰州网站建设模板无特殊说明情况下,下面所有题s目都是linux下的32位C程序。 「1、计算以下sizeof的值。」 char str1[]{a, b, c
网站建设进度报告,公司电脑租用,网站开发软件搭配,兰州网站建设模板无特殊说明情况下#xff0c;下面所有题s目都是linux下的32位C程序。 「1、计算以下sizeof的值。」 char str1[] {a, b, c, d, e}; char str2[] abcde;char *ptr abcde;char book[][80]{计算机应用基础,C语言,C程…无特殊说明情况下下面所有题s目都是linux下的32位C程序。 「1、计算以下sizeof的值。」 char str1[]  {a, b, c, d, e}; char str2[]  abcde;char *ptr  abcde;char book[][80]{计算机应用基础,C语言,C程序设计,数据结构};sizeof(str1)? sizeof(str2)? sizeof(ptr)? sizeof(book)? sizeof(book[0])? 「分析」 sizeof(str1)5就是5*sizeof(char)5 sizeof(str2)6字符串都是以\0结尾所以所占字节数为6 sizeof(ptr)4ptr是一个指针在32位平台上大小为4字节 sizeof(book)320book是一个二维数组4801 sizeof(book[0])80book[0]是第一维数组因为此80*1 根据sizeof求数组元素的个数也很简单拿第一个来说就是sizeof(str1)/sizeof(char)。 「2、上面是求计算他们所占字节数下面来看看怎么求字符串或数组的实际长度。计算下面strlen值。」 char  arryA[]  {a,b,c,\0,d,e}; char  arryB[]  {a,b,c,d,e}; char  arryC[6]  {a,b,c,d,e}; char *str  abcde;「分析」 strlen(arryA) 3strlen遇到\0就会返回无论后面有多少个字符 strlen(arryB)长度无法确定没有人为写入‘\0’strlen会继续计算直到找到结束符结果未知 strlen(arryC)5指定了数组大小编译器会自动在空余地方添加\0这其实跟char arryC[6] {a,b,c,d,e,\0};等价。 strlen(str) 5不包括结尾的\0。 由以上两个我们来看看strlen和sizeof的区别 1、sizeof是C语言中的一个单目运算操作符类似、--等 用于数据类型sizeof(type)比如sizeof(int) 用于变量sizeof(var_name) 注意sizeof不能用于函数类型、不完全类型或位字段。不完全类型是指具有未知存储大小的数据类型比如未知存储大小的数组类型、 未知内容的结构体或联合类型void类型等。例如sizeof(max)若此时变量max定义为int max(); sizeof(char_v)此时char_v 定义为char char_v[MAX]且MAX未知。 2、strlen是个函数其原型为unsigned int strlen(char *s); streln的计算必须依赖字符序列中的\0通过该字符来判断字符序列是否结束。 「3、忽悠人的char str[]和char *str」 1下面的操作合法么出错的话会是在那个阶段编译时期还是运行时期 char str[]  hello; str[0]  s;     //合法么char *str  hello; p[0]  s;      //合法么「分析」 这两个都可以成功编译只是第二个会在运行时期出现段错误。下面来分析一下 首先hello是一个字符串常量存储在静态数据区域(data段)这是在编译时期就确定的。第一个是将字符串常量赋值给了一个变量全局变量在数据段局部变量在栈区实际上是将字符串常量拷贝到了变量内存中因此修改的只是str[]这个变量的值。 第二个是将字符串常量的首地址赋值给p对p操作就是对字符串常量进行修改因此出现了段错误。
阅读全文