| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1068 人关注过本帖
标题:求助,for循环的语法。。。
只看楼主 加入收藏
追梦人zmrghy
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:406
专家分:190
注 册:2021-4-9
结帖率:97.26%
收藏
已结贴  问题点数:20 回复次数:5 
求助,for循环的语法。。。
图片附件: 游客没有浏览图片的权限,请 登录注册

遍历目录,批量修改文件名,学习了几个月了。
终于可以用自己能够理解的方法写出程序来了。。。
程序代码:
#include <iostream>
#include<filesystem>
#include <regex>
using namespace std;

filesystem::path make_name(filesystem::path url,wstring str)
{
    wregex pattern(L".*[::](.+)[((]国.*");
    wstring result = regex_replace(str, pattern, L"$1.mp4");
    url += L'\\';
    url += result;
    return url;
}
void traverseDirectory(filesystem::path url)
{
    if (!filesystem::exists(url))
    {
        cout << "当前目录不存在" << endl;
    }
    else
    {
        filesystem::directory_iterator list(url);
        for (auto v : list)
        {
            rename(v.path(), make_name(url, v.path().filename()));
        }
    }
}
int main() 
{
    traverseDirectory("C:\\Users\\Administrator\\Desktop\\JJDown\\Download");
    return 0;
}


图片附件: 游客没有浏览图片的权限,请 登录注册

但是程序中,还有一处,for循环的语法不能理解。。。。
第23行中。for循环括号中应该有3个表达式呀, 为什么这个for循环括号中只有一个表达式。。。

程序测试目录文件夹
JJDown.rar (2.56 KB)


[此贴子已经被作者于2022-7-4 03:02编辑过]

搜索更多相关主题的帖子: for url 循环 语法 path 
2022-07-04 03:00
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:1 
回复 楼主 追梦人zmrghy
摘录:
拷贝range的元素时,使用for(auto x : range).
for(auto a:b)中b为一个容器,效果是利用a遍历并获得b容器中的每一个值,但是a无法影响到b容器中的元素。

修改range的元素时,使用for(auto && x : range).
for(auto &a:b)中加了引用符号,可以对容器中的内容进行赋值,即可通过对a赋值来做到容器b的内容填充。

只读range的元素时,使用for(const auto & x : range).

DO IT YOURSELF !
2022-07-04 08:47
追梦人zmrghy
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:406
专家分:190
注 册:2021-4-9
收藏
得分:0 
回复 2楼 wp231957
不理解,是什么原理
2022-07-04 10:26
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:1 
回复 3楼 追梦人zmrghy
这不需要原理,记住就可以了
类似PYTHON  range 循环一样
 for x in range:
     xxxx
都是固定语法,记住就好了,一定要追原理,那就涉及到内部机制了,,普通人没必要研究

DO IT YOURSELF !
2022-07-04 10:52
追梦人zmrghy
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:406
专家分:190
注 册:2021-4-9
收藏
得分:0 
回复 4楼 wp231957
只知道
for(表达式1; 表达式2; 表达式3)

不理解,是如何循环的
for (auto v : list)
2022-07-04 18:43
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:18 
以下是引用追梦人zmrghy在2022-7-4 18:43:29的发言:

只知道
for(表达式1; 表达式2; 表达式3)

不理解,是如何循环的
for (auto v : list)

https://zh.
这就是C++增添的语法,C语言不支持。
2022-07-05 18:59
快速回复:求助,for循环的语法。。。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.093806 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved