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 是一门静态编译型的系统级 ...
- 函数调用的四种方式 和 相关的 --- this指向
this:表示被调用函数的上下文对象. arguments:表示函数调用过程中传递的所有参数. 这两个参数都是隐式的函数参数.会静默传递给函数,并且和函数体内显式声明的参数一样可正常访问. argum ...
- C/C++函数调用的几种方式及函数名修饰规则以及c++为什么不允许重载仅返回类型不同的函数
我们知道,调用函数时,计算机常用栈来存放函数执行需要的参数,由于栈的空间大小是有限的,在windows下栈是向低地址扩展的数据结构,是一块连续的内存区域.这句话的意思是栈顶的地址和栈的最大容量是系统预 ...
- Javascript函数调用的四种模式
一 前言 Javascript一共有四种调用模式:方法调用模式.函数调用模式.构造器调用模式以及apply调用模式.调用模式不同,对应的隐藏参数this值也会不同. 二 方法调用模式 函数作为对象的属 ...
- VScript 函数调用的两种分类:Sub过程和Function过程
来源:http://soft.zdnet.com.cn/software_zone/2007/0925/523318.shtml 在 VBScript 中,过程被分为两类:Sub 过程和 Functi ...
- python函数调用的四种方式 --基础重点
第一种:参数按顺序从第一个参数往后排#标准调用 # -*- coding: UTF-8 -*- def normal_invoke(x, y): print "--normal_invoke ...
- JS函数调用的四种方法
js的函数调用会免费奉送两个而外的参数就是 this 和 arguments .arguments是参数组,他并不是一个真实的数组,但是可以使用.length方法获得长度. 书上有说4中调用方式: 方 ...
- Nim积的一种???的写法
Nim积总不能一直打四次暴力吧! 用SG定理等东西,可以证明 \((N, \oplus, \otimes)\) 构成一个域.(证明很难,我不会) 其中 \(\oplus\) 为异或, \(x \oti ...
- js函数调用的几种方法
js的函数调用会免费奉送两个而外的参数就是 this 和 arguments .arguments是参数组,他并不是一个真实的数组,但是可以使用.length方法获得长度. 书上有说4中调用方式: 方 ...
随机推荐
- 【javascript】函数中的this的四种绑定形式
目录 this的默认绑定 this的隐式绑定 隐式绑定下,作为对象属性的函数,对于对象来说是独立的 在一串对象属性链中,this绑定的是最内层的对象 this的显式绑定:(call和bind方法) n ...
- Linux粘滞位的设置
粘滞位(Stickybit),或粘着位,是Unix文件系统权限的一个旗标.最常见的用法在目录上设置粘滞位,如此以来,只有目录内文件的所有者或者root才可以删除或移动该文件.如果不为目录设置粘滞位,任 ...
- noip普及组2004 不高兴的津津
描述 津津上初中了.妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班.另外每周妈妈还会送她去学习朗诵.舞蹈和钢琴.但是津津如果一天上课超过八个小时就会不高兴,而且, ...
- 如何设计和实现一个web app
web app简介 web app其实不算是什么新鲜的东西,相比于传统的web和传统的app,web app这种web和app相结合的产物有的优点如下: 1. 开发上web app更有便捷性,ios开 ...
- 【Linux】文件存储结构
大部分的Linux文件系统(如ext2.ext3)规定,一个文件由目录项.inode和数据块组成: 目录项:包括文件名和inode节点号. Inode:又称文件索引节点,包含文件的基础信息以及数据块 ...
- Leetcode - Letter Combination Of A Phone Number
Given a digit string, return all possible letter combinations that the number could represent. A map ...
- GHO2VMDK转换工具分享含VS2010源码
平常经常用到虚拟机,每次从gho转换为vmdk时都要输入cmd代码,觉得麻烦,自己动手做了个gho2vmdk转换工具,集成ghost32.exe文件,可以一键转换,省时省事.运行时会将ghost32. ...
- [2014-09-21]如何在 Asp.net Mvc 开发过程中更好的使用Enum
场景描述 在web开发过程中,有时候需要根据Enum类型生成下拉菜单: 有时候在输出枚举类型的时候,又希望输出对应的更具描述性的字符串. 喜欢直接用中文的请无视本文 不多说,直接看代码. 以下代码借鉴 ...
- (转载)Java变量作用域详解
转载自http://www.cnblogs.com/AlanLee/p/6627949.html 大多数程序设计语言都提供了"作用域"(Scope)的概念. 对于在作用域里定义的名 ...
- 我的Java起源
2015年九月八号我和我爸一同去Java的培训学校,我是一名读了高一就不读的学生.抛弃高中就一个理由--不喜欢,是的,我不喜欢高中的课程.我不理解我一辈子不会出地球为什么我要学习那些内容,如果我就自己 ...