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

网站域名注册后怎么建设wordpress主题页面底部编辑

网站域名注册后怎么建设,wordpress主题页面底部编辑,晋江文学网,尤溪住房和城乡建设局网站【C 语言】数组1. 概念2. 声明3. 分类4. 初始化5. 赋值6. 附加语法7. VLA 的一些补充1. 概念 数组是存放一组 相同类型 的 有序 数据的一段 连续 空间。 2. 声明 TYPE identifier[static(optional) qualifiers(optional) expression(optional)] TYPE identifier[qualifiers(o… 【C 语言】数组1. 概念2. 声明3. 分类4. 初始化5. 赋值6. 附加语法7. VLA 的一些补充1. 概念 数组是存放一组 相同类型 的 有序 数据的一段 连续 空间。 2. 声明 TYPE identifier[static(optional) qualifiers(optional) expression(optional)] TYPE identifier[qualifiers(optional) static(optional) expression(optional)] // farr 是一个包含 20 个元素的数组元素的类型是 float // pfarr 是一个包含 10 个元素的数组数组的类型是 指向 float 的指针 float farr[20], *pfarr[10];3. 分类 数组分为已知常量长度数组变长度数组以及未知大小数组。 1expression 为整数常量表达式则声明为已知常量长度数组 // 声明一个包含 20 个类型为 float 的元素的数组 // 整数常量 20 是常量表达式 float farr[20];// sizeof 是常量表达式 char text[sizeof(double)];// 枚举常量也是常量表达式 enum { MAX_SIZE 100 }; int narr[MAX_SIZE];2expression 不是整数常量表达式则声明为可变长度数组VLA int n 0;while(n 10) {// 每次控制流经过该声明时会重新声明数组int a[n * 2];printf(The array has %zu elements\n, sizeof(a)/sizeof(*a));// 离开作用域 VLA 结束其生命周期 }使用 * 作为 expression 时声明为未指定长度的数组。这种声明只能出现在函数原型声明中。 void foo(size_t x, int a[*]); void foo(size_t x, int a[x]) {// 这里 sizeof(a) 的大小等同于 sizeof(int*)printf(%zu\n, sizeof(a)); }若忽略 expression 则声明为未知大小数组。 未知大小数组 区别于 可变长度数组 的地方在于可变长度数组 在其生命周期内数组大小是不变的。 // 未知长度 extern int xarr[]; // 长度为 3 int iarr[] {0, 1, 2};未知大小数组可以作为 struct 的最后一个成员 struct s {int n;double d[]; };void func() {struct s *s1 malloc(sizeof(struct s) sizeof(double) * 8);//... }4. 初始化 列表初始化 int iarr0[] {1, 2, 3}; // 3 个元素123 int iarr1[5] {1, 2, 3}; // 5 个元素12300 int iarr2[3] {1};// 3 个元素1 0 0 int iarr3[3] {1, 2, 3, 4, 5}; // 3 个元素123.字符数组还可以使用字符串字面值来初始化。 // 10 个元素 // H, e, l, l, o, // \0, \0, \0, \0, \0 char str0[10] Hello;使用指派表达式 使用指派表达式时会先依次初始化指派表达式之前的元素如果有的话然后再初始化指派表达式指定的位置最后再依次初始化指派表达式之后的位置。 有点绕看下面例子 // 初始化后的 iarr0: // 1, 0, 0, 0, 0, // 7, 0, 0, 11, 3, // 9, 0, 0, 0, 0 int iarr0[15] {1, [5] 7, [8] 11, 3, 9};5. 赋值 通过下标可以对数组元素进行赋值。 int iarr0[] {1, 2, 3}; // 现在是1103 iarr0[1] 10;注意尽管数组可以进行取值但数组类型的对象并不是可修改类型不可以作为左值。 int iarr1[3] {1, 2, 3}; int iarr2[3] {4, 5, 6}; // 取地址可。 int (*parr)[3] iarr1; // 对数组赋值不可。 iarr1 iarr2;6. 附加语法 数组类型声明可以使用 const、volatile 或者 restrict 限定符来进行修饰在 C23 之前此时数据类型无限定但数组元素类型有限定C23 开始数组类型与其元素类型有等同限定 typedef int A[2][3]; const A a {{4, 5, 6}, {7, 8, 9}}; // int const[3] 转 int *不可。 int *pi a[0]; // int const[2][3] 转 void * // 在 gcc 12.1 可以通过编译 // 在 clang 13.1.6 无法通过编译。 void *unqual_ptr a;7. VLA 的一些补充 可变长数组类型Variable Length Array, VLA和指向可变长数组的指针类型称为可变修改类型Variably Modified, VM。 任何可变修改类型的对象只能声明于 块作用域 或 函数原型作用域 中。 #define MAX_SIZE 100 extern int n;// ...// VLA 声明在文件作用域不可 int A[n]; // 可 int B[MAX_SIZE]; // 指向 VLA 的指针不可 extern int (*p2)[n]; // VLA 声明于函数原型作用域可 void fvla(int m, int C[m]);VLA 必须拥有自动或分配存储期。指向 VLA 的指针可以有静态存储期。 VM 类型不能拥有链接。 (自动即定义在函数内并且不带auto以外存储类标识符修饰的对象分配即通过 malloc、calloc、realloc 获得内存) // int C[m] 指向 VLA 的指针自动存储期块作用域。可。 void func(int m, int C[m]) {// 块作用域可。typedef int I_VLA[m][m];I_VLA ivla;// 块作用域自动存储期。可。int D[m];// 块作用域但静态。不可。static int E[m];// VLA 链接不可。extern int F[m];// 块作用域分配存储期。可。int (*s)[m];s malloc(m * sizeof(int));// VM 链接不可。extern int (*r)[m];// 指向 VLA 的静态指针。可。static int (*q)[m] B; }VM 不能作为联合union或者结构struct的成员。 void func(void) {int n 5;// 错误的例子struct tag {// VLA 作为结构体成员不可。int z[n];// VM 作为结构体成员不可。int (*y)[n];}; }
http://www.yayakq.cn/news/4253/

相关文章:

  • 网站建设费维护费自助建设视频网站
  • 河南省建设工程网站科技馆网站建设方案
  • 做外链哪个网站好专业网站设计是什么
  • 官方网站数据如何做脚注随州网站制作价格
  • 北京做手机网站的公司套模板网站价格表
  • 网站改域名备案做网站需要用到哪些开发软件
  • 郑州公司网站制作兼职做网站编辑
  • 视觉传达设计网站山西seo和网络推广
  • 寻找网站开发信息查询系统
  • 网站镜像怎么做网站建设合同的主要内容
  • 网站建设的重点营销型网站建设的原则
  • 宣城市建设监督管理局网站下载wordpress前段会员中心
  • 做地接的网站代账公司如何拉客户
  • 网站安全建设工作总结宁波网站设计价格
  • 网站上怎样做轮播图把wordpress装进app
  • 太原市建设银行网站网站后台排版工具
  • 什么是营销型网站建设wordpress英文插件
  • 山东省交通运输厅网站开发单位赣州广播电视台
  • 公司网站导航栏是什么电子邮箱怎么申请
  • 一般网站的字体大小品牌建设的最高境界
  • 广州网站优化指导网络营销渠道策略分析
  • 东阳住房和城市建设网站中体建设集团门户登录
  • 仿购物网站目录wordpress去掉父分类
  • 租用网站服务器深圳网站定制开发
  • asp医院网站源码破解版地方门户cms
  • 如何解决网站只收录首页的一些办法上海建设网站是国家级吗
  • 甘肃省住房和建设厅官方网站wordpress调用单页
  • 做网站的岗位叫什么wap网址是什么意思
  • 湛江企业网站怎么建设wordpress 入门主题
  • 网站建设项目规划书目录广州哪里能买到正品港版黄道益活络油