linux gtk IDE 程序设计(四)

昨天晚上和丫头聊天(珠珠)
他说,假如以后我们吵架了怎么办呢?
我说吵架很正常阿,只要你不提分手,我会珍惜这段感情的
可是假如一时冲动提了呢?
我说那就不要意识冲动嘛,要不你说分手我有不可能死缠烂打的。。。
那假如我们吵架了不说话了呢?你会主动和我说话不?
当然阿,女生耍耍小脾气多正常的,我应该会主动的
那以后假如吵架生气了,你只要发个短信“丫头”过来我就不生气了~

呵呵,听这还感觉还是很感动的,多好的女孩,呵呵,希望能一直和她走下去,更远,再远,搞的我昨天做了一晚上关于丫头的梦,好久没做梦了突然作一次还不习惯的,呵呵,不过梦的内容记不到了,可惜阿~

说完生活进入正题了哈
今天gtk IDE的编写有有了新进展,可以编译单一文件了,呵呵,不过那个连结还么作。。。
在信进展中遇到了个以解决的问题,不过我还是把解决方法拿来和大家分享一下哈
是关于system的使用的
感觉并不是所有终端能执行的语句方到了system中就能执行的,尤其是重定向
比如
程序中的system(“ls”)
可以正常执行
system(“ls > out.txt”)也可以正常执行
但是对错误重定向就有点问题了

system(“ls asdf 2&> out.txt”)
system(“ls asdf 2 &> out.txt”)
system(“ls asdf &> out.txt”)
都不能重定向成功,而在终端下都是可以执行的
但是
system(“ls asdf 2> out.txt”)
system(“ls asdf > out.txt 2>&1”)
就可以

一下是这阶段的源代码
对代码的模块有进行了改变,感觉清晰了一些,但是还是单文件编译,因为我还不会些makefile,不过会多文件编译了,但是直接代码里多文件编译是在是麻烦,所以暂时没有使用
#include <gtk/gtk.h>
#include <fcntl.h>
#include <stdio.h>
#include  <string.h>
#include <malloc.h>
#include <unistd.h>
/*=============================*/
/*definition space             */
/*=============================*/
#define MAIN_WINDOW_WIDTH 790
#define MAIN_WINDOW_HIGH  590

#define F_NAME 0
#define F_PATH 1
/*=============================*/
/*the place of fuction declear */
/*=============================*/
void main_window_init(void);
void show_init(void);
void interface_init(void);
void interface_set(void);
void menu_init(void);
void view_init(void);
void debug_view_init(void);
void view_state_label_init(void);
gint delete_event(GtkWidget* widget, GdkEvent* event, gpointer data);
gint file_open(GtkWidget* widget, GdkEvent* event, gpointer data);
gint file_open_ok(GtkWidget* widget, GdkEvent* event, gpointer data);
gint file_save(GtkWidget* widget, GdkEvent* event, gpointer data);
gint file_save_ok(GtkWidget* widget, GdkEvent* event, gpointer data);
gint debug_compile(GtkWidget* widget, GdkEvent* event, gpointer data);
gint debug_function(GtkWidget* widget, GdkEvent* event, gpointer data);
gint view_key_press(GtkWidget* widget, GdkEvent* event, gpointer data);
gint main_window_key_press(GtkWidget* widget, GdkEvent* event, gpointer data);
char* f_get_string_name(char* string,char type);
/*==============================*/
/*global symbol declear         */
/*==============================*/
GtkWidget* main_window;
GtkWidget* window;
GtkWidget* main_menu_bar;
GtkWidget* file;
GtkWidget* table;

GtkWidget* view;
GtkWidget* view_scroll;

GtkWidget* debug_view;
GtkWidget* debug_view_scroll;
GtkWidget* main_menu_box;
GtkWidget* project_box;
GtkWidget* debug_box;
GtkWidget* view_box;
GtkWidget* view_state_label;
GtkWidget* view_state_label_box;
GtkWidget* debug_view_box;
GtkWidget* default_box;
GtkWidget* menu_items;
GtkWidget* tmp1;
GtkWidget* tmp2;
GtkWidget* tmp3;
GtkWidget* tmp4;
const char *file_name = NULL;
GtkTextBuffer* code = NULL;
GtkTextBuffer* debug_view_buffer = NULL;
/*********************************/
/* the access of program         */
/*********************************/
int main(int argc, char* argv[])
{
    /*init*/
    gtk_init(&argc,&argv);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值