在linux里,c程序的编辑、编译、调试的详细步骤是什么?

在linux里,c程序的编辑、编译、调试的详细步骤是什么?,第1张

在linux下,一般的c程序开发流程为:

c程序的编辑

一般情况下,简单的c程序编辑是通过vi文本编辑器进行的,语法格式和在windows下的编辑是一样的;

c程序的编译

而编译则是对编辑好的c语言程序进行一个,预处理,编辑,汇编和链接的过程,一般格式为:     编译器名 -参数 目标文件名 源文件名;

一般工作在命令行模式;

c程序的调试:

调试阶段则是建立在c程序编译通过的情况下进行的,一般通过GDB调试进行,逐步排错和细节查看。

数组越界,跟

没关系,

可能是

你{}的数组成员

过多了

例如

char

a[5]={'1','2','c','b','5','6'},

5个空间

6个

就越界

int main(int argc, char **argv)

{

char *p

int i

p= (char*) malloc(30) //加类型转换 (char*)

strcpy(p,"not 30 bytes")

printf("p=<%s>\n",p)

if(argc==2){

if(strcmp(argv[1],"-b") ==0) p[0]='a' //不要漏小括号,下标最大29,这里用0

else if(strcmp(argv[1],"-f")==0){

p[0]='b'

}

}

printf("%s\n",p) //这里输出

free(p) //释放

return 0

}

输入 程序名 -b, 输出:aot 30 bytes

输入 程序名 -f, 输出:bot 30 bytes


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

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

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

发表评论

登录后才能评论

评论列表(0条)

    保存