Linux编程在终端里输入命令马上回车程序诞生

运维 系统运维
Linux编程保存后在终端里输入命令“gcc helloworld.c -o helloworld”,马上回车,心想自己的第一个Linux编程程序就要诞生了,噢,My god,谁知出来的是错误提示,说main函数没有返回int型,但上面的代码在VC里是可行的。

想知道到Linux编程系统的真相么,想知道Linux编程系统中藏有的内在奥义么,只有我来给大家全面讲解介绍Linux编程系统今天,看了一下《Linux系统应用与开发教程》的“GCC的使用与开发”部分,自己接触Linux编程也不短时间了,只不过真正弄懂Linux编程的东西还少,现在就来玩玩Linux编程。

Linux编程前两天才安装的Fedora 7.0正式版,启动系统后,新建一个空文件helloworld.c,敲入程序初学者使用的最简单程序代码(虽然我学C已经有两年多了^_^)

  1. #include<stdio.h> 
  2. void main()  
  3. {printf("Hello World!"n");} 

Linux编程保存后在终端里输入命令“gcc helloworld.c -o helloworld”,马上回车,心想自己的***个Linux编程程序就要诞生了,噢,My god,谁知出来的是错误提示,说main函数没有返回int型,但上面的代码在VC里是可行的。无办法,改为

  1. #include<stdio.h> 
  2. int main()  
  3. {  
  4. printf("Hello World!"n");  
  5. return 0;  

再执行生成命令,这次什么也没提示,成功了,哈哈~~~接着当然是运行自己的***个Linux编程程序看看结果啦,在终端里输入“helloworld”,噢,My god,提示没有此命令。

明明程序就在当前目录啊,看看书上怎么写的,终于发现需要这样写命令“./helloworld”,回车,终于打印出 “Hello World!”了。虽然自己写程序将近三年,但在Linux编程上连打印“Hello World!”还是遇到麻烦,这就是没有动手的原因。

接着写个有意思点的——窗体程序,按照书上使用GTK+,把helloworld.c代码改成

  1. #include<gtk/gtk.h> 
  2. void on_btn_clicked(GtkWidget *widget, gpointer data)  
  3. {  
  4. g_print("Hello World!"n");  
  5. }  
  6. void on_delete(GtkWidget *widget, GdkEvent *event, gpointer data)  
  7. {  
  8. g_print("Window Closed."n");  
  9. gtk_main_quit();  
  10. }  
  11. int main(int argc, char *argv[])  
  12. {  
  13. GtkWidget *window;  
  14. GtkWidget *button;  
  15. gtk_set_locale();  
  16. gtk_init(&argc, &argv);  
  17. window = gtk_window_new(GTK_WINDOW_TOPLEVEL);  
  18. gtk_container_set_border_width(GTK_CONTAINER(window), 10);  
  19. g_signal_connect(G_OBJECT(window), "delete_event", G_CALLBACK(on_delete), NULL);  
  20. button = gtk_button_new_with_label("Hello World");  
  21. g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(on_btn_clicked), NULL);  
  22. gtk_container_add(GTK_CONTAINER(window), button);  
  23. gtk_widget_show_all(window);  
  24. gtk_main();  
  25. return 0;  
  26. }  
  27.  

全是那么长的函数名,还有那么多的下划线,看了有点眼花,终于自己打错了两个单词,经编译时才提示的。当我打好代码后,按照书上所说的命令“gcc helloworld.c -o helloworld 'pkg-config gtk+-2.0 --cflags --libs'”。

回车后却提示什么无“pkg-config gtk+-2.0 --cflags --libs”,摸不着头脑,书上说输入“pkg-config gtk+-2.0 --cflags --libs”可以检查它的输出结果,输入回车确实出来一堆字符,有什么用不知道。再试上面的编译命令,还是同样的错误,怎么回事?

是不是书上排版写错命令了?马上打开Firefox,百度了一下,看到别人使用的命令和我打的有点小小的不同,就是那个单引号,我打的是正规的英文单引号,而别人用的却是向右斜的“单引号”,怎么那么奇怪?书上也是说使用一对反向单引号。

Linux编程我找不着什么反向单引号在哪输入,就把别人的Copy过来,变成“gcc helloworld.c -o helloworld `pkg-config gtk+-2.0 --cflags --libs`”,复制命令到终端,回车,等了一会,***什么结果都没有,呵呵,成功啦!

~~~原来真的是那个什么反向单引号的问题,我再试了一下键盘,还是找不着什么反向单引号。算了,不理,执行***个Linux编程窗体程序看看,输入“./helloworld”,回车,哈哈,窗体出来啦,只有一个很丑的按钮,很小的窗体,差点找不着它出现在哪里,按***化更怪,因为那个按钮也跟着变大了,哈哈~~~

***次Linux编程是这样的失败,呼!重启回到Windows 2003,写下这篇文章……(哦,对了,那个反向单引号在这个时候给我看到了,是一个非常少用的符号,也在一个非常少用的按键上面,就是键盘左上角Esc 键下面那个,这个叫反向单引号,哈哈~~~~)

【编辑推荐】

  1. 全面讲解GNU/Linux编程概念
  2. Linux Makefile介绍使用的环境深入浅出
  3. Fedora Linux分区规划还算得心应手
  4. Linux文件dns设置vi使用技巧
  5. Linux系统修改主机名与IP设置
责任编辑:佚名 来源: CSDN
相关推荐

2022-04-16 19:04:49

Linuxpass 命令

2014-06-16 09:44:56

Linux scripLinux命令

2023-12-12 17:56:05

终端JavaScrip代码

2020-06-18 07:49:47

Linux终端程序

2019-08-12 10:30:54

FedoraLinuxYakuake

2009-12-16 14:10:42

Linux终端命令

2009-12-16 09:40:38

Linux终端Linux命令

2020-08-23 21:45:18

Linux终端文件

2023-03-04 13:32:35

Linux创建目录

2014-07-04 09:47:24

SwiftSwift开发

2021-12-17 14:49:44

Linuxinxi 命令系统信息

2022-04-20 10:43:24

Linux命令

2021-11-04 09:15:58

终端Linux命令

2010-03-05 16:44:52

Linux终端命令

2010-03-05 16:19:47

2020-02-10 09:23:09

LinuxReddit命令

2020-02-17 11:05:27

GitHub代码开发者

2023-12-13 17:04:51

终端命令shell

2014-04-11 11:37:15

2020-04-25 19:00:15

Linux终端命令
点赞
收藏

51CTO技术栈公众号