linux怎么设置c99标准

linux怎么设置c99标准,第1张

加上 -std=c99

gcc -std=c99 tset.c -o test

我用的这个参数

sdf@dfT43:~$ gcc -std=c99 1.c -o 1

sdf@dfT43:~$ ./1

hello.

你可以试一下

对,C99的新特性允许在数组长度表达式中使用变量,称为变长数组(VLA,Variable Length Array),VLA只能定义为局部变量而不能是全局变量,与VLA有关的语法规则比较复杂,而且很多编译器不支持这种新特性,所以还是不建议使用的。

说说你这个例子吧,你这个其实不属于变长数组,因为在定义数组 arr[] 前,它的大小 var 已经是固定的了。应该是这样:

int var

int arr[var]

先不要初始化变量 var。

我再给个例子吧,《Linux C编程一站式学习》里面关于归并排序算法的其中一个函数。

void merge(int start, int mid, int end)

{

int n1 = mid - start + 1

int n2 = end - mid

int left[n1], right[n2]

......

}

其中,left与right都是变长数组,因为在定义的时候,数组大小不确定。

1、打开kali linux的终端。创建一个文件并命名为test.c。在终端输入:touch test.c。

2、可以看到已经生成了一个后缀为test.c的源文件。然后用vim工具打开这个文件并编写代码。在终端中输入:vim test.c或者gvim test.c打开这个文件并编写代码。

3、编写完了这个代码。现在开始编译源文件。在终端中输入:gcc test.cgcc是linux自带的c语言编译器。如果是windows则要用ide工具来编译。linux系统一般写C语言用gcc +vim+gdb三个自带的工具就可以了。

4、打完gcc test.c编译完C源文件。然后就可以看见a.out的文件。一般linux系统就默认为a.out为编译完的文件。现在运行a.out文件。在a.out文件的目录下打开终端并输入./a.out就是运行文件了。

5、如果想要编译完的文件名不要用a.out文件。就可以在编译时打入.gcc test.c -o test.out然后就可以看见有一个test.out.文件 了。-o后面跟着的编译生成的文件名。

6、再运行test.out在终端中输入./test.out结果如图。这样在linux系统下编译并运行C语言就完成了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8609261.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-18
下一篇2023-04-18

发表评论

登录后才能评论

评论列表(0条)

    保存