「Mac玩转仓颉内测版2」入门篇2 - 编写第一个Cangjie程序

news2024/11/14 8:52:22

本篇详细介绍在Mac系统上创建首个Cangjie项目并编写、运行第一个Cangjie程序的全过程。内容涵盖项目创建、代码编写、程序运行与调试,以及代码修改后的重新运行。通过本篇,掌握Cangjie项目的基本操作,进一步巩固开发环境的配置,迈出Cangjie编程的第一步。

关键词
  • Cangjie程序编写
  • 首个Cangjie项目创建
  • Cangjie代码调试
  • VSCode使用指南
  • Mac Cangjie开发
  • Cangjie项目运行

一、创建首个Cangjie项目
1.1 创建项目
  1. 打开 VSCode,使用快捷键 Shift + Command + P 打开命令面板。

  2. 输入 cangjie,选择 Create Cangjie Project 选项。

    image-20240927005056083.png

  3. 选择 Create CJNative Cangjie project 选项。

    image-20240927005234150.png

  4. 在弹出的菜单中,选择 Create Executable Output Cangjie project 选项。

    image-20240927005430551.png

  5. 选择项目路径,例如 /Users/用户名/Projects/CangjieProject,输入项目名称,然后按 Enter

    image-20240927005705622.png

  6. 确认创建后,自动生成 main.cj 文件。

1.2 打开项目
  1. 使用 VSCode 打开项目文件夹。

  2. Explorer 侧边栏中,导航至 src/main.cj 文件,查看默认代码:

    main(): Int64 {
        println("hello world")
        return 0
    }
    
1.3 运行项目
1.3.1 配置环境
  1. VSCode 中打开终端。

  2. 输入以下命令以配置环境:

    source /Users/用户名/cangjie/envsetup.sh
    

    注意:将 用户名 替换为Mac系统的实际用户名。

1.3.2 执行程序
  1. 在终端中输入以下命令运行项目:

    cjpm run
    
  2. 检查终端输出,确保显示:

    hello world
    
1.3.3 修改并重新运行程序
  1. 打开 src/main.cj 文件,修改 println 语句,例如:

    main(): Int64 {
        println("hello world")
        println("你好,仓颉")
        return 0
    }
    
  2. 保存文件后,返回终端,确保环境已配置(如未配置,可重新执行 source 命令)。

  3. 再次运行程序:

    cjpm run
    
  4. 检查终端输出,确保显示:

    hello world
    你好,仓颉
    

二、代码调试

调试是编程过程中不可或缺的一部分,通过调试可以有效地查找和修复代码中的错误。以下是在 VSCode 中进行Cangjie程序调试的步骤:

2.1 设置断点
  1. 打开 src/main.cj 文件。
  2. 在需要检查的代码行左侧单击,设置断点。例如,在 println(“hello world”) 行设置断点。
2.2 启动调试
  1. VSCode 中,点击左侧活动栏的 Run and Debug 图标,或使用快捷键 Control + Shift + D

  2. 点击 Start Debugging 按钮(绿色箭头),或按 F5

  3. 程序将运行并在断点处暂停,允许检查变量和程序状态。

2.3 检查变量和调用堆栈
  1. 当程序在断点处暂停时,查看 Variables 面板,检查变量的当前值。
  2. 使用 Call Stack 面板查看函数调用顺序。
  3. 可以逐步执行代码,使用 Step OverF10)、Step IntoF11)和 Step OutShift + F11)功能。
2.4 结束调试
  1. 调试完成后,点击 Stop 按钮或使用快捷键 Shift + F5 结束调试会话。

小结

本篇完成了创建首个Cangjie项目的全过程,验证了开发环境的正确配置,并成功编写、运行及修改了第一个Cangjie程序。通过这些步骤,奠定了Cangjie项目开发的坚实基础,并介绍了如何在 VSCode 中进行代码调试,提升了编程效率和代码质量。


下篇预告

下一篇将探讨Cangjie的基本语法与结构,深入了解语言特性,提升编程能力,敬请期待!


上一篇:「Mac玩转仓颉内测版1」入门篇1 - Cangjie环境的搭建
下一篇:「Mac玩转仓颉内测版3」入门篇3 - Cangjie的基本语法与结构

作者:SoraLuna
链接:https://www.nutpi.net/thread?topicId=74
來源:坚果派
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2240055.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微信小程序_小程序视图与逻辑_day3

一、目标 A. 能够知道如何实现页面之间的导航跳转 B. 能够知道如何实现下拉刷新效果 C. 能够知道如何实现上拉加载更多效果 D. 能够知道小程序中常用的生命周期 二、目录 A. 页面导航 B. 页面事件 C. 生命周期 D. WXS脚本 E. 案例-本地生活(列表页面)…

Threejs 材质贴图、光照和投影详解

1. 材质和贴图 材质(Material)定义了物体表面的外观,包括颜色、光泽度、透明度等。贴图(Textures)是应用于材质的图像,它们可以增加物体表面的细节和真实感。 1.1材质类型 MeshBasicMaterial&#xff1a…

论文概览 |《Sustainable Cities and Society》2024.11 Vol.115(下)

本次给大家整理的是《Sustainable Cities and Society》杂志2024年11月第115期的论文的题目和摘要,一共包括76篇SCI论文!由于论文过多,我们将通过两篇文章进行介绍,本篇文章介绍第31--第76篇论文! 论文31 The effect of urban fo…

【问卷调研】HarmonyOS SDK开发者社区用户需求有奖调研

问卷请点击:HarmonyOS SDK开发者社区用户需求有奖调研

【3D Slicer】的小白入门使用指南五

心脏CT多组织半自动分割(解说版) 模块勾选的是converters下的crop volume 右侧移动滑块+移动边框,移动位置找到自己关注的区域即可,然后点击apply(其他参数也要设置的和图片一致) 模块勾选segment editor,并创建心脏多个不同分割位置(默认下不同位置自动分配了不同的颜…

丹摩征文活动|FLUX.1 和 ComfyUI:从部署到上手,轻松驾驭!

FLUX.1 和 ComfyUI:从部署到上手,轻松驾驭! FLUX.1历史曲线 黑森林实验室推出了一款名为FLUX.1的先进图像生成模型,根据不同用户需求,提供了三种独特的版本。 FLUX.1-pro:作为专为企业打造的强大闭源版本…

自动驾驶合集(更新中)

文章目录 车辆模型控制路径规划 车辆模型 车辆模型基础合集 控制 控制合集 路径规划 规划合集

string------1

文章目录 一. STL1.概念2.版本 二. string类2.1 为什么学习string类2. 标准库中的string类2.2.1 构造(7个)2.2.2 对string类对象进行“访问和修改”(1)operator[](2)迭代器1.迭代器的使用2.迭代器的价值&am…

开源 2 + 1 链动模式、AI 智能名片、S2B2C 商城小程序在用户留存与品牌发展中的应用研究

摘要:本文以企业和个人品牌发展中至关重要的用户留存问题为切入点,结合管理大师彼得德鲁克对于企业兴旺发达的观点,阐述了用户留存对品牌营收的关键意义。在此基础上,深入分析开源 2 1 链动模式、AI 智能名片、S2B2C 商城小程序在…

蓝桥杯每日真题 - 第8天

题目:(子2023) 题目描述(14届 C&C B组A题) 解题思路: 该代码通过动态计算包含数字 "2023" 的子序列出现次数。主要思路是: 拼接序列:将1到2023的所有数字按顺序拆分…

Mac Nginx 前端打包部署

安装homebrew /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)" 安装Nginx brew install nginx nginx相关命令 nginx启动命令:nginx nginx -s reload #重新加载配置 nginx -s reopen #重启 nginx -s stop #…

小试银河麒麟系统OCR软件

0 前言 今天在国产电脑上办公,需要从一些PDF文件中复制文字内容,但是这些PDF文件是图片转换生成的,不支持文字选择和复制,除了手工输入,我们还可以使用OCR。 1 什么是OCR OCR (Optical Character Recogni…

选择主动孤独,亦可以成长和放松

有的人热衷于喧嚣,享受来自社交场合的灯火辉煌,将欢声笑语作为心灵的慰藉。有的人则偏爱那份宁静,更愿意在青灯古巷间徘徊,在山川湖海间独行,以一杯茶、一卷书、一段旅程与自我对话。每个人以不同的方式诠释活着的意义…

Django 外键引用另一个表中的多个字段

在 Django 中,外键(ForeignKey)通常只引用另一张表的一个字段,比如一个主键或一个唯一标识字段。然而,如果我们需要让一个外键引用另一张表中的多个字段,通常有以下几种方法来实现这种关系。 1、问题背景 …

MyBatis从入门到进阶

目录 MyBatis入门1、创建项目、数据准备2、数据库配置3、编写持久层代码单元测试打印日志 基本操作查询数据插入数据删除数据更新数据 MyBatis - xml插入数据更新数据删除数据查询数据#{}与${}SQL注入排序like查询 MyBatis进阶if标签trim标签where标签set标签foreach标签sql标签…

【JavaWeb】JavaWeb入门之XML详解

目录 1.XML介绍 1.1.XML概述 1.1.1.什么是XML 1.1.2.XML的作用 1.1.3.XML与HTML的比较 1.1.4.XML和properties(属性文件)比较 1.1.5.W3C组织 1.2.XML语法概述 1.2.1.XML文档展示 1.2.2.XML文档的组成部分 1.3.XML文档声明 1.3.1.什么是XML文…

wordcloud库基本介绍

文章目录 wordcloud库概述wordcloud库的安装 wordcloud库使用说明配置对象参数 wordcloud应用实例实例: 政府工作报告词云 wordcloud库概述 wordcloud是优秀的词云展示第三方库 词云以词语为基本单位,更加直观和艺术地展示文本 wordcloud库的安装 (cmd命令行) pip install …

VMware和CentOS 7.6 Linux操作系统的安装使用

1. 安装VMware 安装VMware之前,有些电脑是需要去BIOS里修改设置开启cpu虚拟化设备支持才能安装。如果运气不好在安装过程中安装不了的话就自行百度吧。 打开 VMware 的官网: https://www.vmware.com/ 点击 product,往下滑找到 see desktop hypeerviso…

LLM在Transformer上的改动

LLM在Transformer上的改动 1.multi-head共享1.1BERT的逻辑1.2multi-head共享 2.attention的前后网络2.1传统Transformer:2.2GPTJ结构: 3.归一化层的位置(LayerNorm)4.归一化层函数的选择4.1LayerNorm4.2RMSNorm 3.激活函数4.LLama…

解决SpringBoot3的Validated依赖实现自定义注解失效问题

我们引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-validation</artifactId></dependency> Validated实现自定义注解 我们首先看看自定义注解里面&#xff0c;用到的注解的包 我们…