实验一Linux下的C语言编程.docVIP

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验一 Linux下的C语言编程 实验内容 编一个C程序,其内容为实现文件拷贝的功能; 编一个C程序,其内容为分窗口同时显示三个并发进程的运行结果。要求用到Linux下的图形库。 源程序 题目一: #includestdio.h #includestdlib.h void main(int argc,char *argv[]) { int ch; if(argc!=3){ printf(arguments error !\n); exit(-1); } if(freopen(argv[1],r,stdin)==NULL){ printf(cant open %s\n,argv[1]); exit(-1); } freopen(argv[2],w,stdout); while((ch=getchar())!=EOF) putchar(ch); fclose(stdin); fclose(stdout); } 题目二: 主程序Main.c: #includestdio.h #includeunistd.h #includesys/types.h #includesys/wait.h int main(int argc,char *argv[]){ pid_t p1,p2,p3; pid_t t1,t2,t3; int status; if((p1=fork())==0){ execv(./hua,argv); } else if((p2=fork())==0){ execv(./shao,argv); } else if((p3=fork())==0){ execv(./tan,argv); } else{ t1=waitpid(p1,status,0); t2=waitpid(p2,status,0); t3=waitpid(p3,status,0); } } 进程tan.c: #includegtk/gtk.h /* 一般可以在 /usr/include/gtk-2.0 下找到上边的头文件 * 上边的头文件的作用是包含进行GTK编程所有可能用到的头 * 文件,包括glib.h等 */ void cb_button(GtkWidget *widget, gpointer data) {// 按钮button的回调函数 gtk_main_quit(); } int main(int argc, char *argv[]) { GtkWidget *main_window; // GtkWidget 是绝大部分可视组件的的基类 gtk_init(argc, argv); //对程序传入的命令行参数进行标准化处理 main_window = gtk_window_new(GTK_WINDOW_TOPLEVEL); //创建窗口(200x200大小) gtk_window_set_title(GTK_WINDOW(main_window), tan!); //设置窗口标题 gtk_widget_show(main_window); //显示窗口 g_signal_connect(G_OBJECT(main_window), destroy, G_CALLBACK(cb_button),NULL); gtk_main(); //Gtk程序主循环 return 0; } 进程shao.c: #includegtk/gtk.h void cb_button(GtkWidget *widget, gpointer data) {// 按钮button的回调函数 gtk_main_quit(); } int main(int argc, char *argv[]) { GtkWidget *main_window; //主窗口对象 GtkWidget *button; //将要放置到主窗口中的按钮对象 gtk_init(argc, argv); main_window = gtk_window_

文档评论(0)

5201314118 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7065201001000004

1亿VIP精品文档

相关文档