69 C语言变长数组
来源:互联网 发布:如何编程游戏的代码 编辑:程序博客网 时间:2024/05/22 04:47
C学习网:链接->C学习网
C训练网:链接->C训练网
目前使用的C语言有两个版本,C89和C99。C89(也称ANSI C)是较早的版本,也是最经典的版本,国内大学几乎都是以该版本为基础进行授课。C99是后来对C89的升级,增添了一些内容,语法更加灵活,同时兼容C89。关于C语言标准的更多内容请访问:C语言的发展及其版本各种编译器都遵循C89标准,但对C99的支持却不同:开源组织的GCC已经支持了大部分的C99标准,而微软的VC、VS对C99却不感兴趣(后来的VS2013、VS2015才慢慢支持)。
为什么要讨论这个问题呢?因为C89和C99对数组做出了不同的规定:在C89中,必须使用数值常量指明数组长度,不能使用变量(不管变量有没有被初始化);而在C99中,可以使用变量指明数组长度。
下面的代码使用数值常量指明数组长度,在任何编译器下都能编译通过:
- int a[10]; //长度为10
- int b[3*5]; //长度为15
- int c[4+8]; //长度为12
- int m = 10, n;
- scanf("%d", &n);
- int a[m], b[n];
在实际编程中,有时数组的长度不能提前确定,如果这个变化范围小,那么使用数值常量定义一个足够大的数组就可以,如果这个变化范围大,就可能会浪费空间,这时就可以使用变长数组。请看下面的代码:
- #include <stdio.h>
- int main()
- {
- int n;
- printf("Input string length: ");
- scanf("%d", &n);
- fflush(stdin);//清空缓冲区
- char str[n];
- printf("Input string: ");
- gets(str);
- puts(str);
- return 0;
- }
Input string length: 30↙
Input string: http://c.biancheng.net↙
http://c.biancheng.net
阅读全文
0 0
- 69 C语言变长数组
- C语言变长数组
- C语言变长数组
- c语言变长数组
- C语言变长数组
- C语言变长数组
- C语言变长数组(zz)
- C语言实现变长数组
- 【C语言】变长数组与柔性数组
- C语言变长数组之剖析
- C语言变长数组之剖析
- C语言变长数组data[0]【总结】
- C语言变长数组data[0]【总结】
- C语言中变长数组的使用方法
- C语言变长消息定义:柔性数组
- C语言变长数组data[0]【总结】
- C语言变长数组data[0]【总结】
- C语言变长数组data[0]【总结】
- intellj idea 如何设置类头注释和方法注释
- 安装部署Hadoop 2.8.0(伪分布式)
- android 自定义ViewSwipeBackHelper,实现左滑结束Activity
- core核心模块—openCV扫描图像,利用查找表和计时
- 多线程-线程组的概述和使用
- 69 C语言变长数组
- 滴滴滴!请出示通往Linux的车票!
- Spark MLlib 入门学习笔记
- eclipse配置优化
- 包含clob数据列的表
- window.open返回值
- Linux下的tar压缩解压缩命令
- 前序、中序、后序遍历的特性
- apache 网站301跳转