C语言实战:字符串动态展开效果
多个字符从两端移动,向中间汇聚
在开始操作之前,我们先讲解一下其中涉及到的知识点
一. strlen函数
在C语言中, strlen 是一个标准库函数,用于计算字符串的长度,即字符串中字符的个数,不包括结尾的空字符'\0'(区分:sizeof 运算符,求的是字节数,可用于计算数组元素个数)
1. 需要包含标准库头文件 <string.c>
2. 字符串必须以 '\0' 结尾
3. 返回值的类型是size_t(无符号类型)
二. Sleep函数
1. 它不是C语言标准库函数,而是Windows API提供的特定函数
2. 在C语言中,Sleep函数用于让程序暂停执行指定时间,单位是毫秒,如:Sleep(1000)表示暂停1秒
3. Windows系统:需要包含<windows.h>
三. system("cls")
在C/C++中,system("cls") 是一个用于清空控制台(命令行窗口)屏幕的指令
功能:调用操作系统的命令cls,执行后会清除当前控制台窗口已输出的所有内容,并将光标移动到左上角
依赖:cls 是 Windows 的指令,仅在 Windows 下有效;且需要包含头文件<stdlib.h>
风险:不建议频繁调用,可能会影响程序性能;可能存在命令注入风险
四. 设计思路
五. 上代码
#include <stdio.h>
#include <windows.h>
#include <stdlib.h>int main()
{char arr1[] = "welcome to here";char arr2[] = "***************";int left = 0;int right = strlen(arr1) - 1;while (left <= right){arr2[left] = arr1[left];arr2[right] = arr1[right];Sleep(1000);system("cls");left++;right--;}printf("%s\n", arr2);return 0;
}
结语
这就是编程的乐趣所在,需要我们不断的动手实践,浅浅的期待一下下一个效果吧~