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")
, 让我感觉很好奇。
好了,你现在也知道这两种写法形式是等价的了,更多的写法形式请看代码。
代码示例:
- #nim版Hello world
- #nim函数调用的基本形式,以下这三种写法是等效的
- echo "v1-Hello world!" #命令式的风格,我个人最喜欢命令式啦,还能少写两括号。
- echo("v2-Hello world!") #过程调用式的风格
- "v3-Hello world!".echo #方法调用的风格
- #复合的风格形式
- "v4-Hello world!".echo("空格 空格","第三个参数")
- "v5-Hello ".echo "world!"
- "v6-Hello ".echo "world!", "第三个参数"
- echo 1,2,3
- echo("a", "b", "c")
- echo "数字也可以这样33333.echo"
- 3333.echo
在命令行界面上运行一下chcp 65001,让windows的cmd用utf8显示中文。
编译并运行后输出的信息如下:
- C:\Users\root\Desktop\test>nim c -r "c:\Users\root\Desktop\test\hellonim.nim"
- Hint: used config file 'D:\dev\nim-0.17.2_x64\config\nim.cfg' [Conf]
- Hint: system [Processing]
- Hint: hellonim [Processing]
- Hint: [Link]
- Hint: operation successful (10999 lines compiled; 0.374 sec total; 17.938MiB peakmem; Debug Build) [SuccessX]
- Hint: c:\Users\root\Desktop\test\hellonim.exe [Exec]
- v1-Hello world!
- v2-Hello world!
- v3-Hello world!
- v4-Hello world!空格 空格第三个参数
- v5-Hello world!
- v6-Hello world!第三个参数
- 123
- abc
- 数字也可以这样33333.echo
- 3333
参考资料:
nim官方文档: https://nim-lang.org/docs/manual.html#procedures-method-call-syntax
Nim 语言有哪些特点 : https://segmentfault.com/a/1190000002576013
Nim函数调用的几种形式的更多相关文章
- Nim函数调用的几种形
Nim函数调用的几种形式 Nim 转载条件:如果你需要转载本文,你需要做到完整转载本文所有的内容,不得删改文内的作者名字与链接.否则拒绝转载. 关于nim的例行介绍: Nim 是一门静态编译型的系统级 ...
- es6 Object.assign ECMAScript 6 笔记(六) ECMAScript 6 笔记(一) react入门——慕课网笔记 jquery中动态新增的元素节点无法触发事件解决办法 响应式图像 弹窗细节 微信浏览器——返回操作 Float 的那些事 Flex布局 HTML5 data-* 自定义属性 参数传递的四种形式
es6 Object.assign 目录 一.基本用法 二.用途 1. 为对象添加属性 2. 为对象添加方法 3. 克隆对象 4. 合并多个对象 5. 为属性指定默认值 三.浏览器支持 ES6 O ...
- 代替jquery $.post 跨域提交数据的N种形式
跨域的N种形式: 1.直接用jquery中$.getJSON进行跨域提交 优点:有返回值,可直接跨域: 缺点:数据量小: 提交方式:仅get (无$.postJSON) $.getJSON(" ...
- C++:一般情况下,设计函数的形参只需要两种形式
C++:一般情况下,设计函数的形参只需要两种形式.一,是引用形参,例如 void function (int &p_para):二,是常量引用形参,例如 void function(const ...
- jquery插件的两种形式
这里总结一下jquery插件的两种形式,一种是通过字面量的形式组织代码,另一种是通过构造函数的方式.下面就两种形式来分析俩个例子. 例子1: ;(function ($,window,document ...
- javascript面向对象系列第三篇——实现继承的3种形式
× 目录 [1]原型继承 [2]伪类继承 [3]组合继承 前面的话 学习如何创建对象是理解面向对象编程的第一步,第二步是理解继承.本文是javascript面向对象系列第三篇——实现继承的3种形式 [ ...
- 移动端App广告常见的10种形式
什么是App广告? App广告,或称In-App广告,是指智能手机和平板电脑这类移动设备中第三方应用程序内置广告,属于移动广告的子类别. App广告兴起得益于其载体—App的风行.平板电脑和大屏触 ...
- SQL 关于apply的两种形式cross apply 和 outer apply(转)
转载链接:http://www.cnblogs.com/shuangnet/archive/2013/04/02/2995798.html apply有两种形式: cross apply 和 oute ...
- Struts2中Action接收参数的四种形式
1.Struts2的Action接收参数的三种形式. a. 使用Action的属性接收(直接在action中利用get方法来接收参数): login.js ...
随机推荐
- loadrunner场景之集合点设置技巧
在loadrunner的虚拟用户中,术语concurrent(并发)和simultaneous(同时)存在一些区别,concurrent 是指虚拟场景中参于运行的虚拟用户. 而simultaneous ...
- [Maven - Java Version] 如何设置Maven的Java版本或者使用不同的JDK版本编译
In pom.xml, defined this maven.compiler.source properties to tell Maven to use Java 8 to compile the ...
- springcloud采坑--Zuul上传文件报java.nio.charset.IllegalCharsetNameException: UTF-8;boundary=sqgzzmMxl1UPdIp0IAYnQgUIAr9yNewVAzKIX
报错日志: 2018-12-17 10:01:19,688 ERROR [io.undertow.request] (default task-3) UT005023: Exception handl ...
- WIN10下Java环境变量配置
首先,你应该已经安装了 Java 的 JDK 了(如果没有安装JDK,请跳转到此网址:http://www.oracle.com/technetwork/java/javase/downloads/i ...
- java,桶排序,冒泡排序,快速排序
1.桶排序: 百度百科:桶排序 (Bucket sort)或所谓的箱排序,是一个排序算法,工作的原理是将数组分到有限数量的桶子里.每个桶子再个别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排 ...
- Python生产者producer和consumer消费者案例写法,含有多线程,包含队列queue、JoinableQueue队列的用法
import timeimport random import queuefrom multiprocessing import Process,Queue 案例一:def consumer(q,na ...
- JMETER-02
JMeter使用篇 1.界面介绍 2.JMeter-测试计划 测试计划:一个JMeter脚本只有一个测试计划,且测试计划必须启用状态 容易掉的坑:由于JMeter脚本中的每个元器件都可以单独禁用,上级 ...
- 【差分约束系统】 note
[差分约束系统] note >>>>题目 [题目描述] 最近有一款很火的游戏,叫做八分音符酱,它和马里奥很相似,不过它的跳跃距离是由你的声音大小来控制的.不过我们现在对玩法就行 ...
- java中JScrollPane不显示水平滚动条的解决办法
在JPanel中添加了表格,表格中对东西太多,需要水平滚动条滑动才能够完全找到所有数据,如果没有水平滚动条的话,数据堆积在一起,无法分开 做法是: 第一步:先将表格自动调整的状态给关闭掉:table. ...
- project euler做题记录
ProjectEuler_做题记录 简单记录一下. problem 441 The inverse summation of coprime couples 神仙题.考虑答案为: \[\begin{a ...