导航:首页 > 操作系统 > linux下写程序

linux下写程序

发布时间:2024-12-12 14:57:43

linux下执行qt程序怎么编译运行

qmake -project? 已经有.pro文件了! 直接运行qmake或者qmake snake.pro或qmake -makefile snake.pro.

重新解压,按以下步骤做:
$ qmake
$ make
找到可执行文件(不是.o, 没后缀的), 一般如果snake.pro中没设置TARGET,默认生成的可执行文件为snake,输入
.$ /snake

Ⅱ 我想在linux下写一个c程序调用linux的可执行文件或者程序,怎么做

Linux C编程中,调用另一个可执行文件或调用命令用system函数最简单了,这个函数原理是在你编写的那个程序的内部启动另一个程序或命令,从而创建一个新进程,并等待这个进程执行完毕退出。如果正常执行,system函数将返回被执行程序或命令的退出码;如果无法运行这个程序或命令,将返回错误代码127;如果是其他错误,返回-1。这个函数的原型是:
#include <stdlib.h>
int system(const char *string);
参数string是将要执行的程序文件名或路径,如果是启动一个命令就是一个命令字符串。
还有一种执行外部程序的方法是exec系列函数,一般是在fork的子进程里面调用exec系列函数,那主进程里直接调用exec系列不行吗,为什么要fork再在子进程里调用呢?因为exec系列的函数(包括execl函数)是将当前进程替换成新进程,这里的当前进程就是你编写的程序,也就是说新进程启动后调用exec函数的进程就不存在了,所以exec系列函数调用之后的代码就不会再执行了。如果你不放在fork子进程里面,那你编写的程序的主进程在执行execl函数后就完全不存在了,所以exec系列函数的使用都是先fork然后在子进程里面调用。因为exec系列函数都要使用fork调用,所以我一般是用system函数。

Ⅲ Linux下写一个c程序,创建一个子进程,利用execl系统调用,若成功则去执行ls-l命令。

#include <stdio.h>
#include <unistd.h>

int main()
{
int pid;

pid = fork();

if (pid < 0)
{
printf("Failed to fork!\n");
return 1;
}

if (pid > 0)
{
wait(NULL);
}
else
{
execlp("/bin/ls", "/bin/ls", "-l", NULL);
}

return 0;
}

Ⅳ 在Linux下如何开发C程序

在Linux开发环境下,GCC是进行C程序开发不可缺少的编译工具。GCC是GNU C Compile的缩写,是GNU/Linux系统下的标准C编译器。虽然GCC没有集成的开发环境,但堪称是目前效率很高的C/C++编译器。《linux就该这么学》非常值得您一看。Linux平台下C程序开发步骤如下:
1.利用编辑器把程序的源代码编写到一个文本文件中。
比如编辑test.c程序内容如下:
/*这是一个测试程序*/
#include<stdio.h>
int main(void)
{
printf("Hello Linux!");
}
2.用C编译器GCC编译连接,生成可执行文件。
$gcc test.c
编译完成后,GCC会创建一个名为a.out的文件。如果想要指定输出文件,可以使用选项-o,命令如下所示:
$gcc-o test1 test.c
这时可执行文件名就变为test1,而不是a.out。
3.用C调试器调试程序。
4.运行该可执行文件。 在此例中运行的文件是:
$./a.out 或者 test1
结果将得出:
Hello Linux!
除了编译器外,Linux还提供了调试工具GDB和程序自动维护工具Make等支持C语言编程的辅助工具。如果想要了解GCC的所有使用说明,使用以下命令:
$man gcc

Ⅳ 怎么在linux下用vim编写一个C程序

一楼的回答很好,在编译的时候,其实可以不用退出VIM的,按ESC退出插入模式,在正常模式下输入:w保存,然后输入:!gcc /path/to/your/file.c就可以编译文件了,如果有错误,直接就在VIM中修改,要不然为什么VIM会被称为神器级的编辑器呢!

Ⅵ 到底怎么在Linux里编写c程序啊

在linux下通常使用gedit或vim直接编写.c程序,然后通过gcc指令编译。以Ubuntu系统为例,详细过程如下:

1、进入桌面Temp文件夹

Ⅶ 在Linux下用C语言做个程序 创建一个txt文件 执行程序写一段话 写进txt

示例教程:

1. 编写代码

在linux下面使用命令创建main.c文件

vimmain.c

main.c代码:

#include<stdio.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<unistd.h>
#include<fcntl.h>
#include<string.h>
#defineMAX50
intmain()
{
intfd;
charbuf[MAX];
fd=open("1.txt",O_WRONLY|O_CREAT|O_APPEND);
if(fd==-1)
{
printf("文件创建失败");
return-1;
}
printf("请输入要写入的句子:");
fgets(buf,MAX,stdin);
write(fd,buf,MAX);
printf("写入成功 ");
return0;
}

2.编译源程序

gccmain.c-omain

结果在此路劲下会出现main源程序

完成

Ⅷ linux下,编写一个c语言程序实现...(详细见正文)!急!200分悬赏!

参考ln -l命令的输出结果,编写了以下程序(即输出结果和ls -l命令的输出结果相似),通过命令行传入要查看的目录,如果没有传入参数,则显出当前目录:

#include <unistd.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <dirent.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <pwd.h>
#include <time.h>

char *getmod(mode_t mode,char *line) /*生成权限描述字符串*/
{
memset(line,0,sizeof(char)*11);

strcat(line,S_ISDIR(mode)?"d":"-");
strcat(line,(mode&S_IRWXU)&S_IRUSR?"r":"-");
strcat(line,(mode&S_IRWXU)&S_IWUSR?"w":"-");
strcat(line,(mode&S_IRWXU)&S_IXUSR?"x":"-");

strcat(line,(mode&S_IRWXG)&S_IRGRP?"r":"-");
strcat(line,(mode&S_IRWXG)&S_IWGRP?"w":"-");
strcat(line,(mode&S_IRWXG)&S_IXGRP?"x":"-");

strcat(line,(mode&S_IRWXO)&S_IROTH?"r":"-");
strcat(line,(mode&S_IRWXO)&S_IWOTH?"w":"-");
strcat(line,(mode&S_IRWXO)&S_IXOTH?"x":"-");

return line;
}
char *directory(char *argv) /*从程序参数取出目录*/
{
int i;
for (i=strlen(argv)-1;i;--i)
if (argv[i]=='/'){
argv[i+1]='\0';
break;
}
return argv;
}

int main(int argc,char *argv[])
{
DIR *dirp;
struct dirent *dirst;
struct stat finfo;
char *path,fname[512],mod[11],ctm[10];
struct passwd *user=NULL;
struct tm *ltm;

if (argc==1) path=directory(argv[0]);
else path=argv[1];

dirp=opendir(path);
if (!dirp)
{
fprintf(stderr,"ERROR\n");
exit(-1);
}

for (dirst=readdir(dirp);dirst;dirst=readdir(dirp))
{
strcpy(fname,path);

lstat(strcat(strcat(fname,"/"),dirst->d_name),&finfo);
user=getpwuid(finfo.st_uid);

printf("%s\t%10s\t",getmod(finfo.st_mode,mod),user->pw_name);
printf("%10d\t%9d\t",finfo.st_ino,finfo.st_size);
ltm=localtime(&finfo.st_mtime);
strftime(ctm,9,"%b",ltm);
printf("%5s",ctm);
strftime(ctm,9,"%d",ltm);
printf("%3s",ctm);
strftime(ctm,9,"%Y",ltm);
printf("%5s\t",ctm);
printf("%s\n",dirst->d_name);
}
closedir(dirp);
return 0;
}

Ⅸ linux下编写c程序放在哪个文件夹下

第一种方法: 改名:mv hello hello.c 编译:首先cd到你源文件的那个目录下,这样省去了指定绝对路径的麻烦,比如cd到桌面,然后:gcc hello.c -o hello 运行:./hello 第二种方法: 启动终端后 gcc /桌面/ hello.c ./a.out 第三种方法: 1.更改所...

阅读全文

与linux下写程序相关的资料

热点内容
760贴片机编程视频 浏览:333
欧姆龙plc编程第36讲 浏览:915
我的世界如何将一个服务器弄崩 浏览:8
php网站访问量代码 浏览:431
怠速压缩机咔咔响 浏览:176
怎么才能修改APP中的数据 浏览:688
哪里有抢单的app 浏览:462
算法概率题 浏览:465
长方形拉伸的命令 浏览:279
python代码函数编程技术 浏览:194
java正则式 浏览:429
外包程序员好进吗 浏览:384
云服务器服务模型架构 浏览:901
删文件夹什么指令 浏览:509
极速抖音已加密怎么办 浏览:603
matlab拉格朗日算法框图 浏览:430
华为公司计算机视觉算法顾问 浏览:254
夏老师讲的单片机 浏览:298
在编程中如何将图片放大 浏览:163
appstore怎么看是否付费 浏览:603