循环语句详解

news2025/1/21 7:12:58

文章目录

  • 循环语句详解
    • 1. 循环使用 v-for 指令
    • 2. v-for 还支持一个可选的第二个参数,参数值为当前项的索引
    • 3. 模板template 中使用 v-for
    • 4. v-for 迭代对象-第一个参数为value
    • 5. v-for的第二个参数为键名
    • 6. v-for的第三个参数为索引
    • 7. v-for迭代整数
    • 8. computed计算属性显示过滤/排序后的结果
    • 9. v-for/v-if 联合使用
    • 10. 扩展小计`==`和`===`的区别
    • 11. 在组件上使用v-for实现todo-list

循环语句详解

1. 循环使用 v-for 指令

v-for 指令需要以 site in sites 形式的特殊语法

  • sites源数据数组并且 site 是数组元素迭代的别名

v-for 可以绑定数据到数组来渲染一个列表

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Vue 测试实例 v-for 可以绑定数据到数组来渲染一个列表 相当于Java中的for循环</title>
    <script src="https://cdn.staticfile.org/vue/3.2.36/vue.global.min.js"></script>
</head>
<body>
<!--创建一个id为app class为demo的div-->
<div id="app" class="demo">
    <!--    v-for 指令根据数组的属性值循环渲染元素或组件 相当于Java中的for循环
    循环将返回的列表展示在页面 ol标签是有序列表 ul是无序列表
    -->
   <ol>
       <li v-for="site in sites">
           {{ site.text }}
       </li>
   </ol>
</div>

<script>
    //    定义Vue3的HelloVueApp应用
    const HelloVueApp = {
        // 设置返回值为一个列表
        data() {
            return {
                sites: [
                    {text: 'Google'},
                    {text: 'Runoob'},
                    {text: 'TaoBao'}
                ]
            }
        }
    }

    // 创建HelloVueApp应用,mount('#app') 将 Vue 应用 HelloVueApp 挂载到 <div id="app" class="demo">中
    Vue.createApp(HelloVueApp).mount('#app')
</script>
</body>
</html>

在这里插入图片描述
在这里插入图片描述

2. v-for 还支持一个可选的第二个参数,参数值为当前项的索引

index 为列表项的索引值

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Vue 测试实例 v-for 还支持一个可选的第二个参数,参数值为当前项的索引</title>
    <script src="https://cdn.staticfile.org/vue/3.2.36/vue.global.min.js"></script>
</head>
<body>
<!--创建一个id为app class为demo的div-->
<div id="app" class="demo">
    <!--    v-for 指令根据数组的属性值循环渲染元素或组件 相当于Java中的for循环
    循环将返回的列表展示在页面 ol标签是有序列表 ul是无序列表
    index 为列表项的索引值
    -->
   <ol>
       <li v-for="(site, index) in sites">
           {{ index }} - {{ site.text }}
       </li>
   </ol>
</div>

<script>
    //    定义Vue3的HelloVueApp应用
    const HelloVueApp = {
        // 设置返回值为一个列表
        data() {
            return {
                sites: [
                    {text: 'Google'},
                    {text: 'Runoob'},
                    {text: 'TaoBao'}
                ]
            }
        }
    }

    // 创建HelloVueApp应用,mount('#app') 将 Vue 应用 HelloVueApp 挂载到 <div id="app" class="demo">中
    Vue.createApp(HelloVueApp).mount('#app')
</script>
</body>
</html>

在这里插入图片描述

3. 模板template 中使用 v-for

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Vue 测试实例 在模板 <template> 中使用 v-for</title>
    <script src="https://cdn.staticfile.org/vue/3.2.36/vue.global.min.js"></script>
</head>
<body>
<!--创建一个id为app class为demo的div-->
<div id="app" class="demo">
    <!--    v-for 指令根据数组的属性值循环渲染元素或组件 相当于Java中的for循环
    循环将返回的列表展示在页面 ol标签是有序列表 ul是无序列表
    -->
   <ol>
<!--       在模板 <template> 中使用 v-for -->
       <template v-for="site in sites">
           <li>{{ site.text }}</li>
           <li>------------------</li>
       </template>
   </ol>
</div>

<script>
    //    定义Vue3的HelloVueApp应用
    const HelloVueApp = {
        // 设置返回值为一个列表
        data() {
            return {
                sites: [
                    {text: 'Google'},
                    {text: 'Runoob'},
                    {text: 'TaoBao'}
                ]
            }
        }
    }

    // 创建HelloVueApp应用,mount('#app') 将 Vue 应用 HelloVueApp 挂载到 <div id="app" class="demo">中
    Vue.createApp(HelloVueApp).mount('#app')
</script>
</body>
</html>

页面效果:
在这里插入图片描述
在这里插入图片描述

4. v-for 迭代对象-第一个参数为value

v-for 可以通过一个对象的属性来迭代数据,第一个参数为value

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Vue 测试实例 v-for 迭代对象 v-for 可以通过一个对象的属性来迭代数据</title>
    <script src="https://cdn.staticfile.org/vue/3.2.36/vue.global.min.js"></script>
</head>
<body>
<!--创建一个id为app class为demo的div-->
<div id="app" class="demo">
    <!--    v-for 指令根据数组的属性值循环渲染元素或组件 相当于Java中的for循环
    循环将返回的列表展示在页面 ol标签是有序列表 ul是无序列表
    -->
   <ol>
<!--       在模板 <template> 中使用 v-for -->
       <template v-for="value in object">
           <li>{{ value }}</li>
       </template>
   </ol>
</div>

<script>
    //    定义Vue3的HelloVueApp应用
    const HelloVueApp = {
        data() {
            // 设置返回值为一个对象
            return {
                object: {
                    name: 'Build Yours Dreams',
                    url: 'https://www.bydglobal.com/cn/index.html',
                    slogan: '科技 绿色 明天'
                }
            }
        }
    }

    // 创建HelloVueApp应用,mount('#app') 将 Vue 应用 HelloVueApp 挂载到 <div id="app" class="demo">中
    Vue.createApp(HelloVueApp).mount('#app')
</script>
</body>
</html>

页面效果:
在这里插入图片描述
在这里插入图片描述

5. v-for的第二个参数为键名

v-for的第二个的参数为键名

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Vue 测试实例 v-for 迭代对象 v-for 可以通过一个对象的属性来迭代数据</title>
    <script src="https://cdn.staticfile.org/vue/3.2.36/vue.global.min.js"></script>
</head>
<body>
<!--创建一个id为app class为demo的div-->
<div id="app" class="demo">
    <!--    v-for 指令根据数组的属性值循环渲染元素或组件 相当于Java中的for循环
    循环将返回的列表展示在页面 ol标签是有序列表 ul是无序列表
    -->
   <ol>
<!--       在模板 <template> 中使用 v-for -->
       <template v-for="(value, key) in object">
           <li>{{ key }} : {{ value }}</li>
       </template>
   </ol>
</div>

<script>
    //    定义Vue3的HelloVueApp应用
    const HelloVueApp = {
        data() {
            // 设置返回值为一个对象
            return {
                object: {
                    name: 'Build Yours Dreams',
                    url: 'https://www.bydglobal.com/cn/index.html',
                    slogan: '科技 绿色 明天'
                }
            }
        }
    }

    // 创建HelloVueApp应用,mount('#app') 将 Vue 应用 HelloVueApp 挂载到 <div id="app" class="demo">中
    Vue.createApp(HelloVueApp).mount('#app')
</script>
</body>
</html>

页面效果:
在这里插入图片描述
在这里插入图片描述

6. v-for的第三个参数为索引

v-for的第三个参数为索引

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Vue 测试实例 v-for 迭代对象 v-for 可以通过一个对象的属性来迭代数据</title>
    <script src="https://cdn.staticfile.org/vue/3.2.36/vue.global.min.js"></script>
</head>
<body>
<!--创建一个id为app class为demo的div-->
<div id="app" class="demo">
    <!--    v-for 指令根据数组的属性值循环渲染元素或组件 相当于Java中的for循环
    循环将返回的列表展示在页面 ol标签是有序列表 ul是无序列表
    -->
   <ol>
<!--       在模板 <template> 中使用 v-for -->
       <template v-for="(value, key, index) in object">
           <li>{{ index }} . {{ key }} : {{ value }}</li>
       </template>
   </ol>
</div>

<script>
    //    定义Vue3的HelloVueApp应用
    const HelloVueApp = {
        data() {
            // 设置返回值为一个对象
            return {
                object: {
                    name: 'Build Yours Dreams',
                    url: 'https://www.bydglobal.com/cn/index.html',
                    slogan: '科技 绿色 明天'
                }
            }
        }
    }

    // 创建HelloVueApp应用,mount('#app') 将 Vue 应用 HelloVueApp 挂载到 <div id="app" class="demo">中
    Vue.createApp(HelloVueApp).mount('#app')
</script>
</body>
</html>

在这里插入图片描述
在这里插入图片描述

7. v-for迭代整数

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Vue 测试实例 v-for 迭代整数</title>
    <script src="https://cdn.staticfile.org/vue/3.2.36/vue.global.min.js"></script>
</head>
<body>
<!--创建一个id为app class为demo的div-->
<div id="app" class="demo">
    <!--    v-for 迭代整数 相当于Java中的for循环
    循环将返回的列表展示在页面 ol标签是有序列表 ul是无序列表
    -->
   <ul>
<!--       在模板 <template> 中使用 v-for -->
       <template v-for="n in 10">
           <li>{{ n }}</li>
       </template>
   </ul>
</div>

<script>
    // 创建app应用,mount('#app') 将 Vue 应用 app 挂载到 <div id="app" class="demo">中
    Vue.createApp(app).mount('#app')
</script>
</body>
</html>

在这里插入图片描述
在这里插入图片描述

8. computed计算属性显示过滤/排序后的结果

可以对数组的元素进行处理后再显示出来,一般可以通过创建一个计算属性,来返回过滤或排序后的数组

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Vue 测试实例 v-for 显示过滤/排序后的结果</title>
    <script src="https://cdn.staticfile.org/vue/3.2.36/vue.global.min.js"></script>
</head>
<body>
<!--创建一个id为app class为demo的div-->
<div id="app" class="demo">
    <!--    v-for 显示过滤/排序后的结果 相当于Java中的for循环
    可以对数组的元素进行处理后再显示出来,一般可以通过创建一个计算属性,来返回过滤或排序后的数组
    循环将返回的列表展示在页面 ol标签是有序列表 ul是无序列表
    -->
   <ul>
<!--       在模板 <template> 中使用 v-for -->
       <template v-for="n in evenNumber">
           <li>{{ n }}</li>
       </template>
   </ul>
</div>

<script>
//    定义Vue应用app
    const HelloVueApp = {
        data() {
        //     定义返回值为一个数组
            return {
                numbers: [1, 2, 3, 4, 5]
            }
        },
    //     在计算属性中定义函数过滤数组找出偶数
        computed:{
            evenNumber() {
                return this.numbers.filter(number => number % 2 === 0)
            }
        }
    }
    // 创建HelloVueApp应用,mount('#app') 将 Vue 应用 app 挂载到 <div id="app" class="demo">中
    Vue.createApp(HelloVueApp).mount('#app')
</script>
</body>
</html>

页面效果:
在这里插入图片描述
在这里插入图片描述

9. v-for/v-if 联合使用

联合使用 v-for/v-if 给 select 设置默认值v-for 循环出列表,v-if 设置选中值

  • 实例:选择框

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <title>Vue 测试实例 v-for/v-if 联合使用 </title>
        <script src="https://cdn.staticfile.org/vue/3.2.36/vue.global.min.js"></script>
    </head>
    <body>
    <!--创建一个id为app class为demo的div-->
    <div id="app" class="demo">
    <!--    设置选择框 v-mode实现单数据双向绑定 设置select改变-->
        <select v-model="selOption" @change="changeVal($event)">
            <!--       在模板 <template> 中使用 v-for设置选择框
            v-for遍历列表-->
            <template v-for="(site, index) in sites" :site="site" :index="index" :key="site.id">
    <!--            设置每个选项 索引为1设置默认值 索引值从0开始-->
                <option v-if="index == 1" :value="site.name" selected>{{ site.name }}</option>
                <option v-else :value="site.name">{{ site.name }}</option>
            </template>
        </select>
    <!--    设置div弹框-->
        <div>您选中了:{{ selOption }}</div>
    </div>
    
    <script>
        //    定义Vue应用HelloVueApp
        const HelloVueApp = {
            data() {
            //     设置返回值
                return {
                    // 默认选择
                    selOption: "Runoob",
                    sites: [
                        {id: 1, name: "Google"},
                        {id: 2, name: "Runoob"},
                        {id: 3, name: "Taobao"}
                    ]
                }
            },
        //     利用方法属性实现选择函数
            methods: {
                // 参数:传入的选中选项
                changeVal: function (event){
                    this.selOption = event.target.value;
                //     选中后弹出选择提示弹窗
                    alert("你选中了" + this.selOption);
                }
            }
        }
    
        // 创建HelloVueApp应用,mount('#app') 将 Vue 应用 app 挂载到 <div id="app" class="demo">中
        Vue.createApp(HelloVueApp).mount('#app')
    </script>
    </body>
    </html>
    

    页面效果:重新选择会弹出弹窗提示
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

10. 扩展小计=====的区别

vue.js中:

  • == :用来比较或者判断两者是否相等,比较时可以自动转换数据类型
  • ===:用来较为严格的比较,除判断数据2这是否相等 ,还会判断两者数据类型是否相同 如不相同也不会转换数据类型 。返回(false)

11. 在组件上使用v-for实现todo-list

  • 在自定义组件上,你可以像在任何普通元素上一样使用 v-for:

      <my-component v-for="item in items" :key="item.id"></my-component>
    
  • 然而,任何数据都不会被自动传递到组件里,因为组件有自己独立的作用域。为了把迭代数据传递到组件里,我们要使用 props

      <my-component
        v-for="(item, index) in items"
        :item="item"
        :index="index"
        :key="item.id"
      ></my-component>
    
  • 不自动将 item 注入到组件里的原因是,这会使得组件与 v-for 的运作紧密耦合。明确组件数据的来源能够使组件在其他场合重复使用。

  • 下面是一个简单的 todo 列表的完整例子

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Vue 测试实例 在组件上使用 v-for 实现to-do-list</title>
    <script src="https://cdn.staticfile.org/vue/3.2.36/vue.global.min.js"></script>
</head>
<body>

<!--创建一个名为todo-list-example的div-->
<div id="todo-list-example">
<!--    在名为todo-list-example的div中定义form表单 -->
    <form v-on:submit.prevent="andNewTodo">
<!--        定义label标签绑定到id为new-todo的输入框-->
        <label for="new-todo">添加 todo</label>
<!--        输入框 v-model双向绑定数据 id为new-todo placeholder 例如:明天早上跑步-->
        <input v-model="newToDoText" id="new-todo" placeholder="例如:明天早上跑步"/>
        <button>添加</button>
    </form>
<!--    todo-list-->
    <ul>
<!--        使用自定义的todo-item组件-->
        <todo-item
                v-for="(todo, index) in todos"
        :key="todo.id"
        :title="todo.title"
                @remove="todos.splice(index, 1)"
        ></todo-item>
    </ul>

</div>

<script>
//    创建一个Vue应用app
const app = Vue.createApp({
    data() {
        // 设置返回数据
        return{
            newToDoText: '',
            todos: [
                {id: 1, title:'看电影'},
                {id: 2, title: '吃饭'},
                {id: 3, title: '上Runoob学习'}
            ],
            nextTodoId: 4
        }
    },
//     利用methods定义函数实现添加to-do-list
    methods: {
        andNewTodo() {
            this.todos.push({
                id: this.nextTodoId++,
                title: this.newToDoText
            })
            this.newToDoText = ''
        }
    }
})

// 定义一个名为site-info的全局组件
app.component('todo-item', {
//     设置组件模板 点击删除按钮删除当前行的todo-list
    template: `
<li>
{{ title }}
<button @click="$emit('remove')">删除</button>
</li>
`,
//     设置组件属性
    props: ['title'],
    emits:['remove']
})

// 使用mount将HelloVueApp应用挂载到名为app的div上
app.mount('#todo-list-example')
</script>


</body>
</html>

页面效果:输入框填入内容,点击添加按钮,todo-list会增加一行,todo-list为空会添加一行空的todo-list
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

运营商大数据精准营销获客?

多年来&#xff0c;大数据运营商一直致力于为企业提供互联网大数据精准营销的新项目&#xff0c;并以确保自身信息安全为前提。例如&#xff0c;如果移动用户查看了任何网站&#xff0c;在网页上搜索了任何关键词&#xff0c;登录了应用程序&#xff0c;给任何人打了电话&#…

【Linux】多线程互斥与同步

文章目录 一、线程互斥1. 线程互斥的引出2. 互斥量3. 互斥锁的实现原理 二、可重入和线程安全三、线程和互斥锁的封装1. 线程封装1. 互斥锁封装 四、死锁1. 死锁的概念2. 死锁的四个必要条件3. 避免死锁 五、线程同步1. 线程同步的理解2. 条件变量 一、线程互斥 1. 线程互斥的…

kaggle近三年NLP比赛top方案汇总及新赛推荐

NLP的赛题任务主要有文本分类、情感分析、关系抽取、文本匹配、阅读理解、问答系统等&#xff0c;自Google开发的NLP处理模型BERT被广泛应用后&#xff0c;目前解决NLP任务的首选方案就是深度学习方法&#xff08;textCNN、LSTM、GRU、BiLSTM、Attention等&#xff09;&#xf…

CSS 纵横比属性:aspect-ratio

CSS 属性 aspect-ratio 为盒子规定了纵横比&#xff08;宽高比&#xff09;&#xff0c;这个纵横比可以用于计算 auto 尺寸以及其他布局函数。

《算法竞赛·快冲300题》每日一题:“点灯游戏”

《算法竞赛快冲300题》将于2024年出版&#xff0c;是《算法竞赛》的辅助练习册。 所有题目放在自建的OJ New Online Judge。 用C/C、Java、Python三种语言给出代码&#xff0c;以中低档题为主&#xff0c;适合入门、进阶。 文章目录 题目描述题解C代码Java代码Python代码 “ 点…

如何通过局域网共享文件

需求环境&#xff1a;公司有多个部门&#xff0c;不同用户与部门使用不同文件 业务背景&#xff1a;一台windows服务器,若干客户端 需要技能&#xff1a; 熟悉windows系统管理&#xff0c; 包含计算机管理、 硬盘硬件、 用户管理、 share and storage management 项目方案…

系统架构设计专业技能 · 软件工程之UML建模设计

现在的一切都是为将来的梦想编织翅膀&#xff0c;让梦想在现实中展翅高飞。 Now everything is for the future of dream weaving wings, let the dream fly in reality. 点击进入系列文章目录 系统架构设计高级技能 软件工程之UML建模设计 一、需求分析 - UML图二、用例图2.…

黑马JVM总结(六)

&#xff08;1&#xff09;常量池 方法区的组成中都由一个叫做运行时常量池的部分&#xff0c;内部包含一个叫做StringTable的东西 反编译二进制字节码&#xff1a; 类的基本信息&#xff1a; 常量池&#xff1a; 方法定义&#xff1a; 构造方法 main方法 &#xff1a;方法中…

NS6326 4-30V 输入 5V/3A 输出同步降压稳压器芯片

NS6326 4-30V 输入 5V/3A 输出同步降压稳压器芯片 1 特性  宽输入电压范围&#xff1a;4V-30V  效率可高达 92%以上  超高恒流精度&#xff1a;5%  恒压精度&#xff1a;5%  无需外部补偿  开关频率&#xff1a;130kHz  输入欠压/过压、输出短路和过热保护  SO…

驱动开发--自动创建设备节点udev机制的实现过程

一、udev的认识 udev:自动创建设备节点的机制&#xff0c;创建设备节点的逻辑在用户空间 二、udev机制创建设备节点的过程分析 三、目录信息创建和删除类函数 #include<linux/device.h> 1.向上提交目录信息 struct class * class_create(struct module *owner,const c…

牛客:小美的01串翻转

小美的01串翻转 #include<iostream> #include<cstring> #include<string> #include<vector>using namespace std; typedef long long ll; const int N 1100; string s; ll res 0;int main() {cin>>s;int n s.size();vector<vector<in…

spice VDAgent简介

vdagent分为linux和windows&#xff0c;其中Linux分为vdagent守护进程和vdagent客户端进程&#xff0c;而windows主要为vdagent服务。 在windows中&#xff0c;通过服务方式自启动&#xff0c;并控制windows显示等。 在linux中&#xff0c; 守护进程通过 Sys-V initscript 或 s…

ChatGPT追祖寻宗:GPT-2论文要点解读

论文地址&#xff1a;Language Models are Unsupervised Multitask Learners 上篇&#xff1a;GPT-1论文要点解读 在上篇&#xff1a;GPT-1论文要点解读中我们介绍了GPT1论文中的相关要点内容&#xff0c;其实自GPT模型诞生以来&#xff0c;其核心模型架构基本没有太大的改变&a…

线程安全问题(3)--- wait(),notify()

前言 在多线程的环境下&#xff0c;我们常常要协调多个线程之间的执行顺序&#xff0c;而为了实现这一点&#xff0c;Java提供了一些方法来帮助我们完成这一点。 一&#xff0c;wait() 作用&#xff1a; 使当前线程进入等待状态 释放当前的锁 (即该方法必须和 synchrnized 关键…

【02】Charles_Breakpoints给接口设置断点

目录 1.适用场景&#xff1a; 2.操作步骤 3.实现效果 ​编辑 1.适用场景&#xff1a; 测试工作中&#xff0c;有些接口的请求or响应数据不符合预期&#xff0c;需要mock一些数据时&#xff0c;需要修改接口的request请求参数、response响应数据。 就可以借助断点实现。 …

探访天府蜂巢成都直播基地,全成都前十的直播产业供应链都在这!

随着新一轮科技革命和产业变革深入发展&#xff0c;数字化转型已经成为大势所趋。成都直播基地作为数字经济创新发展的前沿和焦点&#xff0c;为产业转型升级和数字经济发展提供核心驱动力。 “直播”新业态新模式的兴起&#xff0c;显示出强大的潜力和活力&#xff0c;树莓集团…

《动手学深度学习 Pytorch版》 4.8 数值稳定性和模型初始化

4.8.1 梯度消失和梯度爆炸 整节理论&#xff0c;详见书本。 梯度消失 %matplotlib inline import torch from d2l import torch as d2lx torch.arange(-8.0, 8.0, 0.1, requires_gradTrue) y torch.sigmoid(x) y.backward(torch.ones_like(x))d2l.plot(x.detach().numpy()…

F. Magic Will Save the World(DP)

Problem - F - Codeforces 黑暗势力的传送门在世界边界打开了&#xff0c;现在整个世界都面临着可怕的威胁。为了关闭传送门并拯救世界&#xff0c;你需要一个接一个地击败n个从传送门中出现的怪物。 只有女巫Vika能够应对这个威胁。她有两个魔法力量——水之魔法和火之魔法。…

口袋参谋:淘宝卖家必备的淘词分析神器!

​在淘宝天猫上&#xff0c;每天都有数以亿计的商品在上面交易&#xff0c;在这个巨大的市场中&#xff0c;如何让自己的商品脱颖而出&#xff0c;成为卖家们关心的问题之一。 因此关键词的挑选就显得尤为重要&#xff0c;好的关键词&#xff0c;一天的搜索量可达上万&#xf…

模拟实现字符串函数和内存函数

模拟实现字符串函数和内存函数 函数介绍部分模拟实现strlenstrcpy,strcat,strcmpstrncpy,strncat,strncmpstrstr,strtokstrerror 字符分类函数内存函数memcpy,memmove,memset,memcmp 求字符串长度(strlen)长度不受限制的字符串函数(strcpy,strcat,strcmp)长度受限制的字符串函数…