🎭 角色指令
xiaoniao.move(10)向前移动指定步数
xiaoniao.moveTo(200, 100)移动到指定坐标
xiaoniao.turn(90)顺时针旋转指定角度
xiaoniao.faceRight()面朝右方
xiaoniao.faceLeft()面朝左方
xiaoniao.faceUp()面朝上方
xiaoniao.faceDown()面朝下方
xiaoniao.bounce()碰到边缘反弹
xiaoniao.pointTowards(xiaohuli)指向另一个角色
xiaoniao.say("你好", 2)说话气泡,持续2秒
xiaoniao.show()显示角色
xiaoniao.hide()隐藏角色
xiaoniao.getX()获取X坐标
xiaoniao.getY()获取Y坐标
xiaoniao.touchEdge()检测是否碰到边缘
xiaoniao.touching(xiaohuli)检测是否碰到另一角色
✏️ 画笔指令
p.fd(100)前进(forward)
p.bk(50)后退(back)
p.rt(90)右转(right turn)
p.lt(90)左转(left turn)
p.moveTo(x, y)移动到坐标
p.penDown()落笔开始画
p.penUp()抬笔停止画
p.color("#FF6B6B")设置画笔颜色
p.size(3)设置画笔粗细
p.cls()清空画布
⌨️ 键盘与延时
_cwKey("ArrowRight")检测右方向键是否按下
_cwKey("ArrowLeft")检测左方向键是否按下
_cwKey("ArrowUp")检测上方向键是否按下
_cwKey("ArrowDown")检测下方向键是否按下
_cwKey("Space")检测空格键是否按下
_cwDelay(30)延时30毫秒(游戏循环用)
💡 C++ 语法支持
int a = 10;整数变量
int arr[5] = {1,2,3};数组定义
for(int i=0; i<10; i++)for循环
while(count > 0)while循环
if/else if/else条件判断
cout << "hello";输出到控制台
rand() % 10生成随机数
📚 标准库 <cmath>
sqrt(x), cbrt(x)平方根、立方根
pow(x,y), exp(x)幂运算、e的x次方
sin(x), cos(x), tan(x)三角函数(弧度)
asin(x), acos(x), atan(x)反三角函数
sinh(x), cosh(x), tanh(x)双曲函数
log(x), log2(x), log10(x)对数函数
ceil(x), floor(x), round(x)取整函数
abs(x), fabs(x)绝对值
fmod(x,y), remainder(x,y)取模、取余
max(a,b), min(a,b)最大最小值
📚 标准库 <algorithm>
sort(arr), sort(arr,0,n)数组排序(升序)
reverse(arr)数组反转
find(arr, val)查找元素,返回索引
count(arr, val)统计元素出现次数
accumulate(arr, init)数组求和
fill(arr, val)填充数组
swap(a, b)交换两个值
lower_bound(arr, val)第一个≥val的位置
upper_bound(arr, val)第一个>val的位置
📚 标准库 <cctype> <cstring> <string>
isdigit(c), isalpha(c)判断字符类型
isupper(c), islower(c)判断是否大小写
toupper(c), tolower(c)大小写转换
strlen(s)字符串长度
strcmp(a,b), strcpy(a,b)字符串比较/复制
stoi(s), stof(s)字符串转数字
to_string(x)数字转字符串
substr(s, pos, len)取子字符串
📚 标准库 <cstdlib> <ctime>
rand()生成随机整数
srand(seed)设置随机种子
time(nullptr)获取当前时间戳
atoi(s), atof(s)字符串转整数/浮点
abs(x), labs(x)整数绝对值
exit(code)退出程序
🔧 常量与宏
INT_MAX, INT_MIN整数最值
LONG_MAX, RAND_MAX长整型最值、随机数最大值
M_PI, M_E圆周率、e
INFINITY, NAN无穷大、非数字
NULL, nullptr空指针
true, false布尔值