Nim函数调用的几种形式

Nim

转载条件:如果你需要转载本文,你需要做到完整转载本文所有的内容,不得删改文内的作者名字与链接。否则拒绝转载。

关于nim的例行介绍:

Nim 是一门静态编译型的系统级编程语言,内置GC,采用像Python一样的缩进风格,Nim代码被翻译成C再编译成可执行文件。

所以nim的特点是兼具简洁,性能不错,可执行文件也比较小,跨平台,开发效率快等等特点。

如果你愿意,Nim也可以被编译成c++ 、Javascript 、OC之类的。

nim 的官方网站: https://nim-lang.org/

关于nim的开发环境:

完整的nim环境由三个部分组成,nim程序 、后端编译器、代码编辑器。

nim代码的编译过程大约是:→ 把nim代码编译成c → 再由c编译器编译成可执行文件。

nim 编辑器环境我目前推荐 vscode + nim 扩展 ,装好就能用,基本不折腾。

codegay 2017年9月19日 06:33:49

正文:

一开始的时候我注意到nim 这可以写echo "haha",也可以写成echo("haha") , 让我感觉很好奇。

好了,你现在也知道这两种写法形式是等价的了,更多的写法形式请看代码。

代码示例:

  1. #nim版Hello world 


  2. #nim函数调用的基本形式,以下这三种写法是等效的 

  3. echo "v1-Hello world!" #命令式的风格,我个人最喜欢命令式啦,还能少写两括号。 

  4. echo("v2-Hello world!") #过程调用式的风格 

  5. "v3-Hello world!".echo #方法调用的风格 


  6. #复合的风格形式 

  7. "v4-Hello world!".echo("空格 空格","第三个参数") 

  8. "v5-Hello ".echo "world!" 

  9. "v6-Hello ".echo "world!", "第三个参数" 


  10. echo 1,2,3 

  11. echo("a", "b", "c") 


  12. echo "数字也可以这样33333.echo" 

  13. 3333.echo 

在命令行界面上运行一下chcp 65001,让windows的cmd用utf8显示中文。

编译并运行后输出的信息如下:

  1. C:\Users\root\Desktop\test>nim c -r "c:\Users\root\Desktop\test\hellonim.nim" 

  2. Hint: used config file 'D:\dev\nim-0.17.2_x64\config\nim.cfg' [Conf] 

  3. Hint: system [Processing] 

  4. Hint: hellonim [Processing] 

  5. Hint: [Link] 

  6. Hint: operation successful (10999 lines compiled; 0.374 sec total; 17.938MiB peakmem; Debug Build) [SuccessX] 

  7. Hint: c:\Users\root\Desktop\test\hellonim.exe [Exec] 

  8. v1-Hello world! 

  9. v2-Hello world! 

  10. v3-Hello world! 

  11. v4-Hello world!空格 空格第三个参数 

  12. v5-Hello world! 

  13. v6-Hello world!第三个参数 

  14. 123 

  15. abc 

  16. 数字也可以这样33333.echo 

  17. 3333 

参考资料:

nim官方文档: https://nim-lang.org/docs/manual.html#procedures-method-call-syntax

Nim 语言有哪些特点 : https://segmentfault.com/a/1190000002576013

Nim函数调用的几种形式的更多相关文章

  1. Nim函数调用的几种形

    Nim函数调用的几种形式 Nim 转载条件:如果你需要转载本文,你需要做到完整转载本文所有的内容,不得删改文内的作者名字与链接.否则拒绝转载. 关于nim的例行介绍: Nim 是一门静态编译型的系统级 ...

  2. es6 Object.assign ECMAScript 6 笔记(六) ECMAScript 6 笔记(一) react入门——慕课网笔记 jquery中动态新增的元素节点无法触发事件解决办法 响应式图像 弹窗细节 微信浏览器——返回操作 Float 的那些事 Flex布局 HTML5 data-* 自定义属性 参数传递的四种形式

    es6 Object.assign   目录 一.基本用法 二.用途 1. 为对象添加属性 2. 为对象添加方法 3. 克隆对象 4. 合并多个对象 5. 为属性指定默认值 三.浏览器支持 ES6 O ...

  3. 代替jquery $.post 跨域提交数据的N种形式

    跨域的N种形式: 1.直接用jquery中$.getJSON进行跨域提交 优点:有返回值,可直接跨域: 缺点:数据量小: 提交方式:仅get (无$.postJSON) $.getJSON(" ...

  4. C++:一般情况下,设计函数的形参只需要两种形式

    C++:一般情况下,设计函数的形参只需要两种形式.一,是引用形参,例如 void function (int &p_para):二,是常量引用形参,例如 void function(const ...

  5. jquery插件的两种形式

    这里总结一下jquery插件的两种形式,一种是通过字面量的形式组织代码,另一种是通过构造函数的方式.下面就两种形式来分析俩个例子. 例子1: ;(function ($,window,document ...

  6. javascript面向对象系列第三篇——实现继承的3种形式

    × 目录 [1]原型继承 [2]伪类继承 [3]组合继承 前面的话 学习如何创建对象是理解面向对象编程的第一步,第二步是理解继承.本文是javascript面向对象系列第三篇——实现继承的3种形式 [ ...

  7. 移动端App广告常见的10种形式

    什么是App广告?   App广告,或称In-App广告,是指智能手机和平板电脑这类移动设备中第三方应用程序内置广告,属于移动广告的子类别. App广告兴起得益于其载体—App的风行.平板电脑和大屏触 ...

  8. SQL 关于apply的两种形式cross apply 和 outer apply(转)

    转载链接:http://www.cnblogs.com/shuangnet/archive/2013/04/02/2995798.html apply有两种形式: cross apply 和 oute ...

  9. Struts2中Action接收参数的四种形式

    1.Struts2的Action接收参数的三种形式.      a. 使用Action的属性接收(直接在action中利用get方法来接收参数):                   login.js ...

随机推荐

  1. react props与render成员函数

    props是组件固有的属性集合,其数据由外部传入,一般在整个组件的生命周期中都是只读的,React的API顶层设计也决定了这一点.属性初值通常由React.createElement函数或者JSX中标 ...

  2. web安全测试--sql注入攻击

     先要自行了解sql的几个概念: 1. or '1'='1' 2. order by 3. union : 联合查询需要表字段相同 sql注入攻击漏洞判断步骤: 1.‘ 2.查看数据库信息 3.绕过过 ...

  3. win2008 401 - 未授权: 由于凭据无效,访问被拒绝。解决方法

    iiis中一个小配置的问题,“身份验证”里面“启用匿名身份验证”,编辑匿名身份验证凭据,选中下面的“应用程序池标识”  就可以了

  4. ERROR:scala:Error:Object scala.runtime in compiler mirror not found

    我的项目是sbt项目,今天早晨的时候还好好的,结果中午吃了个饭回来就特么的编译就报错了,真是闹心 报错截图: 解决方案: 删除idea的缓存文件 然后重新启动idea,重新下载jia包,在进行编译,就 ...

  5. 移动vue项目,启动错误:Module build failed: Error: No PostCSS Config found in:

    解决办法:在根目录新建postcss.config.js module.exports = { plugins: { 'autoprefixer': {browsers: 'last 5 versio ...

  6. windows 定时备份linux 上oracle 数据库

    1.bat 脚本 exp root/root@10.0.0.0:1521/feiye grants=y owner=root file='E:\code\environment\mysqlBackDa ...

  7. 登录获取token,token参数关联至所有请求的请求体内

    问题描述: 有些系统接口判断用户是否登录,是校验登录接口成功后传的token值,也就是请求系统所有接口时,前端传参必带登录成功后接口返回的token,后台以此检验是否过期或是否有登录.所有接口都依赖登 ...

  8. DTW动态时间规整算法

    目录 1.基本介绍 2.算法原理(理论原理) 2.1 主要术语 2.2 算法由来和改进过程 2.3 DTW算法流程 3.算法DTW和算法HMM的比较 1.基本介绍 DTW:Dynamic Time W ...

  9. spring cloud(四)熔断器Hystrix

    熔断器 雪崩效应 在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障,进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应.服务雪崩效应是一种因“服务提供者”的不可用导致“服务 ...

  10. Vant-Weapp小程序+商城案例

    功能还在进一步完善中,欢迎扫一扫提出宝贵意见! 详细信息可进群沟通: