当前位置: 首页 > news >正文

仓颉编程笔记1:变量函数定义,常用关键字,实际编写示例

本文就在网页版上体验一下仓颉编程,就先不下载它的SDK了

基本围绕着实际摸索的编程规则来写的

也没心思多看它的文档,写的不太明确,至少我是看的一知半解的

文章提供测试代码讲解、测试效果图:

目录

仓颉编程在线体验网址:

仓颉的一些关键字如下:

变量定义:

定义输出字符串变量:

字符串的拼接与输出:

定义函数:

定义使用函数(参数+返回值):


 

仓颉编程在线体验网址:

本文就在它的体验平台上编程,网址如下:

在线体验-仓颉编程语言官网

仓颉的一些关键字如下:

 关键字是不能作为标识符使用的特殊字符串

asbreakBool
casecatchclass
constcontinueRune
doelseenum
extendforfrom
funcfalsefinally
foreignFloat16Float32
Float64ifin
isinitinout
importinterfaceInt8
Int16Int32Int64
IntNativeletmut
mainmacromatch
Nothingoperatorprop
packagequotereturn
spawnsuperstatic
structsynchronizedtry
thistruetype
throwThisunsafe
UnitUInt8UInt16
UInt32UInt64UIntNative
varVArraywhere
while

变量定义:

 初始值要有明确的类型指向,才可以省略变量类型标注,

但我还是建议都做好变量类型标注

定义输出字符串变量:

这里我定义了三个 不可变的变量 字符串:(因为他们被let 修饰):

text1、text2、text3

定义时可以直接 let text1=“...”  然后换行表示结束

也可以像 let text2 :String="..."  手动定义好变量为String类型,然后封号表示结束

有封号就可以不换行: 反之,没有封号就必须换行!

main() {let text1 = "第一个需要打印的text1"      //不作变量类型标注,并且直接换行标志语句结束let text2 :String="The second one requires printing 'text2'";let text3 :String="第三个需要打印的语句";  //封号也标志语句结束println(text1)println(text2)println(text3)
}

运行结果:

字符串的拼接与输出:

这个程序演示了简单的字符串拼接并输出,十分简单

注意 text3 定义时要用 var 修饰,因为他要在程序中改变

main() {let text1 = "第一段字符"let text2 :String="第二段字符";println(text1)println(text2)var text3 :String=text1+text2;   //直接拼接text1 与  text2println(text3)text3=text1+"+++"+text2; //中间额外拼接了一个临时字符串println(text3)
}

运行结果:

 

定义函数:

通过关键字func来定义一个函数

函数名不能被进行赋值,即函数名不能以表达式左值的形式在程序中出现。

:意思就是函数名就不能当成变量用了

定义使用函数(参数+返回值):

 这个示例定义了函数Function_string_concatenation

用于拼接俩个字符串,并在他们之间加上+号

传入定义参数是俩个字符串,返回值也是一个字符串

//字符串相加函数 
func Function_string_concatenation (tex1:String, tex2:String):String
{var TEX:String=tex1+"+"+tex2;return TEX;
}main() {let text1 = "第一段字符"let text2 :String="第二段字符";var text3 :String=Function_string_concatenation(text1,text2);   //调用函数拼接text1 与  text2println(text3)
}

运行结果:

http://www.lryc.cn/news/511307.html

相关文章:

  • Python小括号( )、中括号[ ]和大括号{}代表什么
  • React里使用lodash工具库
  • 【免费分享】mysql笔记,涵盖查询、缓存、存储过程、索引,优化。
  • C语言-数据结构-图
  • android sqlite 数据库简单封装示例(java)
  • “宠物服务的跨平台整合”:多设备宠物服务平台的实现
  • 关于最新MySQL9.0.1版本zip自配(通用)版下载、安装、环境配置
  • 【Halcon】例程讲解:基于形状匹配与OCR的多图像处理(附图像、程序下载链接)
  • B站推荐模型数据流的一致性架构
  • 不安全物联网的轻量级加密:综述
  • mysql_init的概念和使用案例
  • 3GPP R18 MT-SDT
  • 时频转换 | Matlab暂态提取变换transient-extracting transform一维数据转二维图像方法
  • .NET Framework 逐渐过时,.NET 8和 .NET 9引领未来
  • 从虚拟到现实:AI与AR/VR技术如何改变体验经济?
  • 在K8S中,Ingress该如何使用?
  • Ubuntu24.04安装NVIDIA驱动及工具包
  • 【每日学点鸿蒙知识】组件封装通用方法、callback和await性能对比、Web组件下拉刷新、hsp包报错、WebView圆角
  • Excel批量设置行高,Excel表格设置自动换行后打印显示不全,Excel表格设置最合适的行高后打印显示不全,完美解决方案!!!
  • Web Bluetooth API 开发记录
  • python基础知识(二)
  • 【每日学点鸿蒙知识】初始化BigInt、包体积瘦身、Tabs嵌套Grid、老年化适配、Release打包失败
  • Android service framework笔记
  • 安全攻防:中间人攻击
  • 【Rust自学】7.3. use关键字 Pt.1:use的使用与as关键字
  • 变长的时间戳(第4版)
  • Intent--组件通信
  • Android14 OTA升级速度过慢问题解决方案
  • 仓颉语言实战——1. 类型
  • AWTK 在全志 tina linux 上支持 2D 图形加速