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

作者分享了初次尝试Linux编程的经历,从编写简单的"Hello World"程序开始,遇到了GCC编译错误,理解了Linux命令行的使用,再到尝试使用GTK+创建窗体程序。过程中遇到的反向单引号问题最终解决,成功运行了第一个Linux窗体程序。
摘要由CSDN通过智能技术生成

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

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

void main()

{printf("Hello World!"n");}

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

int main()

{

printf("Hello World!"n");

return 0;

}

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

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

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

void on_btn_clicked(GtkWidget *widget, gpointer data)

{

g_print("Hello World!"n");

}

void on_delete(GtkWidget *widget, GdkEvent *event, gpointer data)

{

g_print("Window Closed."n");

gtk_main_quit();

}

int main(int argc, char *argv[])

{

GtkWidget *window;

GtkWidget *button;

gtk_set_locale();

gtk_init(&argc, &argv);

window=gtk_window_new(GTK_WINDOW_TOPLEVEL);

gtk_container_set_border_width(GTK_CONTAINER(window), 10);

g_signal_connect(G_OBJECT(window), "delete_event", G_CALLBACK(on_delete), NULL);

button=gtk_button_new_with_label("Hello World");

g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(on_btn_clicked), NULL);

gtk_container_add(GTK_CONTAINER(window), button);

gtk_widget_show_all(window);

gtk_main();

return 0;

}

全是那么长的函数名,还有那么多的下划线,看了有点眼花,终于自己打错了两个单词,经编译时才提示的。当我打好代码后,按照书上所说的命令“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 键下面那个,这个叫反向单引号,哈哈~~~~)

全面讲解GNU/Linux编程概念

Linux Makefile介绍使用的环境深入浅出

Fedora Linux分区规划还算得心应手

Linux文件dns设置vi使用技巧

Linux系统修改主机名与IP设置

http://www.dengb.com/Linuxjc/598352.htmlwww.dengb.comtruehttp://www.dengb.com/Linuxjc/598352.htmlTechArticle想知道到Linux编程系统的真相么,想知道Linux编程系统中藏有的内在奥义么,只有我来给大家全面讲解介绍Linux编程系统今天,看了一下《...

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值