很不爽,用了一周时间在Linux就学会了一门新的编程语言vala叽哩哇啦,学一个新语言咋就这么容易捏解决办法
发布时间:2011-06-30 07:31:29 文章来源:www.iduyao.cn 采编人员:星星草
很不爽,用了一周时间在Linux就学会了一门新的编程语言vala叽哩哇啦,学一个新语言咋就这么容易捏
很不爽,用了一周时间在Linux就学会了一门新的编程语言vala叽哩哇啦,学一个新语言咋就这么容易捏
Vala 是使用类似 C# 的语法,应该比用 C 写轻松的多。Vala 编译的时候,会把 Vala 程序编译成 C 代码,然后再使用 C 编译器编译成本机代码,我最近觉得这种编译方式很好,因为现在而言,几乎任何一个系统,不论是 PC 的,还智能手机,抑或嵌入式设备,总会至少提供一个 C 的编译器,那么把程序先编译成 C 就等于在这些系统上都可以运行了。
代码如下:
//别看错了哦,这可不是C#,这是一个新的语言叫哇啦
int main (string[] args) {
// Output the number of arguments
stdout.printf ("%d command line argument(s):\n", args.length);
// Enumerate all command line arguments
foreach (string arg in args) {
stdout.printf ("%s\n", arg);
}
// Exit code (0: success, 1: failure)
return 0;
}
直接编译成纯C语言代码
代码如下:
/* main.c generated by valac 0.14.0, the Vala compiler
* generated from main.vala, do not modify */
/*别看错了哦,这可不是C#,这是一个新的语言叫哇啦*/
#include <glib.h>
#include <glib-object.h>
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#define _g_free0(var) (var = (g_free (var), NULL))
gint _vala_main (gchar** args, int args_length1);
gint _vala_main (gchar** args, int args_length1) {
gint result = 0;
FILE* _tmp0_;
gchar** _tmp1_;
gint _tmp1__length1;
gchar** _tmp2_;
gint _tmp2__length1;
#line 5 "/media/disk i_/working/vala/test1/test1/main.vala"
_tmp0_ = stdout;
#line 5 "/media/disk i_/working/vala/test1/test1/main.vala"
_tmp1_ = args;
#line 5 "/media/disk i_/working/vala/test1/test1/main.vala"
_tmp1__length1 = args_length1;
#line 5 "/media/disk i_/working/vala/test1/test1/main.vala"
fprintf (_tmp0_, "%d command line argument(s):\n", _tmp1__length1);
#line 8 "/media/disk i_/working/vala/test1/test1/main.vala"
_tmp2_ = args;
#line 8 "/media/disk i_/working/vala/test1/test1/main.vala"
_tmp2__length1 = args_length1;
#line 39 "main.c"
{
gchar** arg_collection = NULL;
gint arg_collection_length1 = 0;
gint _arg_collection_size_ = 0;
gint arg_it = 0;
#line 8 "/media/disk i_/working/vala/test1/test1/main.vala"
arg_collection = _tmp2_;
#line 8 "/media/disk i_/working/vala/test1/test1/main.vala"
arg_collection_length1 = _tmp2__length1;
#line 8 "/media/disk i_/working/vala/test1/test1/main.vala"
for (arg_it = 0; arg_it < _tmp2__length1; arg_it = arg_it + 1) {
#line 51 "main.c"
gchar* _tmp3_;
gchar* arg = NULL;
#line 8 "/media/disk i_/working/vala/test1/test1/main.vala"
_tmp3_ = g_strdup (arg_collection[arg_it]);
#line 8 "/media/disk i_/working/vala/test1/test1/main.vala"
arg = _tmp3_;
#line 58 "main.c"
{
FILE* _tmp4_;
const gchar* _tmp5_;
#line 9 "/media/disk i_/working/vala/test1/test1/main.vala"
_tmp4_ = stdout;
#line 9 "/media/disk i_/working/vala/test1/test1/main.vala"
_tmp5_ = arg;
#line 9 "/media/disk i_/working/vala/test1/test1/main.vala"
fprintf (_tmp4_, "%s\n", _tmp5_);
#line 8 "/media/disk i_/working/vala/test1/test1/main.vala"
_g_free0 (arg);
#line 70 "main.c"
}
}
}
#line 13 "/media/disk i_/working/vala/test1/test1/main.vala"
result = 0;
#line 13 "/media/disk i_/working/vala/test1/test1/main.vala"
return result;
#line 78 "main.c"
}
int main (int argc, char ** argv) {
#line 2 "/media/disk i_/working/vala/test1/test1/main.vala"
g_type_init ();
#line 2 "/media/disk i_/working/vala/test1/test1/main.vala"
return _vala_main (argv, argc);
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
erlang:创建表
mnesia:create_table(student, [{attributes,{name,number,sex}}]).
怎么老是提示:
{aborted,{bad_type,student,{...
-
100分求助,matlab一维矩阵变成二维矩阵,怎么感觉我写的代码这么绕呢
希望把Input矩阵(一维)变成3行4列的二维矩阵Output;我写了下面...
-
为什么没有易语言版块呢?
为什么没有易语言版块呢?
------解决方案--------------------
易语言,还不常用,交流也不比,所以无....
-
批处理的一个问题
想用批处理更改文件属性
@echo off
arrtib -R /S E:\home\*.*
exit
这样写是错误的吗?
为什么没起作用啊
--...
-
几个关于大型机的问题(新手求救啊~)
1、z/OS 和UNIX系统的相同点和相异点有哪些啊?主目录和用户目录的区别是什么啊?
2、用JCL创建一...
-
急求!如何用正则截取一对标签中的字符当中的日期
<p class="source">
<!--[if !IE]>收藏功能<!...
-
批处理代码放在U盘里,如何复制整个硬盘的时间段文件? qivsran老师的答案,谢谢!
@echo off
md 新文件
setlocal enabledelayedexpa...
-
复制文件不带目录文件夹如何修改代码?同名文件仅复制最新的
@echo off
md %computername%资料 2>nul
Cd /d %computername%资料
F...
-
求C里面 全角半角转换函数
求C里面 全角半角转换函数
------解决方案--------------------
我在别处看了,希望对你有帮助。
...
-
求助:关于qtp10 无法识别 maven自动构建flex3.6 的问题
近日遇到maven自动构建flex3.6的问题。希望大家提出宝贵意见。
问...