Ⅰ 用C语言 把D盘所有的*.txt文件《文本文件》改为*.abc 文件----- 更改文件后缀
//
// File name : Main.cpp
//
// Code by : jiangyonghang
//
// Project name : ExtendRenamer
//
// Create datetime: 2013-02-24 18:42:40
//
// Tested or implemented header
// ...
// C system headers
#include <windows.h>
#include <tchar.h>
// C++ system headers
// ...
// Headers from other projects
// ...
// Headers of current project
// ...
// 第一个参数是目录名,第二个参数是原来的后缀名晌判,第三个参数是新后缀名,第四个参数true表悔冲示递归重命名,false表示只对当前目录而不对子目录进行重命名
void RenameExtention(const TCHAR kRootPath[], const TCHAR kOldExtention[], const TCHAR kNewExtention[], int recursive);
int main()
{
TCHAR kRootPath[] = TEXT("D:\\碧谨歼");
RenameExtention(kRootPath, TEXT("txt"), TEXT("abc"), false);
return 0;
}
void GetSearchModal(const TCHAR kRootPath[], TCHAR ret_search_modal[])
{
_tcscpy(ret_search_modal, kRootPath);
if (ret_search_modal[_tcslen(ret_search_modal) - 1] != TCHAR('\\') )
{
_tcscat(ret_search_modal, TEXT("\\") );
}
_tcscat(ret_search_modal, TEXT("*") );
return;
}
int MatchExtention(const TCHAR kFileName[], const TCHAR kTargetExtention[])
{
const TCHAR *kLastDot = _tcsrchr(kFileName, TCHAR('.') );
if (NULL == kLastDot)
{
return false;
}
return (0 == _tcscmp(kLastDot + 1, kTargetExtention) );
}
void (const TCHAR kOldFileName[], const TCHAR kNewExtention[], TCHAR ret_new_file_name[])
{
_tcscpy(ret_new_file_name, kOldFileName);
TCHAR *last_dot = _tcsrchr(ret_new_file_name, '.');
if (last_dot != NULL)
{
last_dot++;
_tcscpy(last_dot, kNewExtention);
}
return;
}
void RenameExtention(const TCHAR kRootPath[], const TCHAR kOldExtention[], const TCHAR kNewExtention[], int recursive)
{
TCHAR search_modal[MAX_PATH] = {TCHAR('\0')};
GetSearchModal(kRootPath, search_modal);
WIN32_FIND_DATA wfd;
HANDLE hIterator = FindFirstFile(search_modal, &wfd);
if (INVALID_HANDLE_VALUE == hIterator)
{
return;
}
while (1)
{
if (_tcscmp(wfd.cFileName, TEXT(".") ) && _tcscmp(wfd.cFileName, TEXT("..") ) )
{
TCHAR t_file_name[MAX_PATH];
_tcscpy(t_file_name, kRootPath);
if (t_file_name[_tcslen(t_file_name) - 1] != TCHAR('\\') )
{
_tcscat(t_file_name, TEXT("\\") );
}
_tcscat(t_file_name, wfd.cFileName);
if (wfd.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
{
if (recursive)
{
RenameExtention(t_file_name, kOldExtention, kNewExtention, true);
}
}
else
{
if (MatchExtention(t_file_name, kOldExtention) )
{
TCHAR new_file_name[MAX_PATH];
(t_file_name, kNewExtention, new_file_name);
MoveFile(t_file_name, new_file_name);
}
}
}
int ret_code = FindNextFile(hIterator, &wfd);
if (!ret_code)
{
if (ERROR_NO_MORE_FILES == GetLastError() )
{
break;
}
return;
}
}
if (hIterator != INVALID_HANDLE_VALUE)
{
FindClose(hIterator);
hIterator = INVALID_HANDLE_VALUE;
}
return;
}
Ⅱ C语言源程序文件的后缀是什么,经过编译后生成文件的后缀是什么经过连接后生成文件的后缀是什么
C语言来源文件后缀名是自.c,编译生成的文件后缀名是.obj,连接后可执行文件的后缀名是.exe。
源文件的后缀仅仅是为了表明该文件中保存的是某种语言的代码(例如.c文件中保存的是C语言代码),这样程序员更加容易区分,编译器也更加容易识别,它并不会导致该文件的内部格式发生改变。
(2)c语言改变执行文件后缀名代码扩展阅读
C语言是一种结构化语言,它有着清晰的层次,可按照模块的方式对程序进行编写,十分有利于程序的调试,且c语言的处理和表现能力都非常的强大。
依靠非常全面的运算符和多样的数据类型,可以轻易完成各种数据结构的构建,通过指针类型更可对内存直接寻址以及对硬件进行直接操作,因此既能够用于开发系统程序,也可用于开发应用软件。
C语言是普适性最强的一种计算机程序编辑语言,它不仅可以发挥出高级编程语言的功用,还具有汇编语言的优点。
Ⅲ 我用VC创建一个工程时,后缀名总是CPP,但是我学的C语言,怎么才能把它改成后缀是C请帮个忙!谢谢
你在新建中选择c++ sourcefile创建,填写文件名的时候就填写filename.c类型,例如:QuckSort.c 这样就生成C类型文件。
Ⅳ 说出C语言源程序及编译、连接后的文件扩展名发生了什么变化
说出C语言源程序及编译、连接后的文件扩展名发生变化:C语言源文件后缀名是.c,编译生成的文件后缀名是.obj,连接后可执行文件的后缀名是.exe。
如果只生成一个文件,那么这个题目答案是B。编译(compile)后生成目标文件,后缀:.obj。也就是机器码。然后链接器(Linker) 连接生成可执行文件,后缀:.exe。最后运行命令(go),直接运行.exe文件。
简介
在嵌入式系统编程中不管是内核的驱动程序还是应用程序的编写,涉及到大量的预处理与条件编译,这样做的好处主要体现在代码的移植性强以及代码的修改方便等方面。因此引入了预处理与条件编译的概念。预处理(或称预编译)是指在进行编译的第一遍扫描(词法扫描和语法分析)之前所作的工作。预处理指令指示在程序正式编译前就由编译器进行的操作,可放在程序中任何位置。
Ⅳ C语言执行过程生成的三种文件和扩展名
用C语言编写的程序成为C语言源程序,源程序文件的扩展名为“.c”。内
源程序经编译生成目标文件(".obj")。容
把目标文件与各种库函数连接起来,生成可执行文件(“.exe”).
C语言程序可以使用在任意架构的处理器上,只要那种架构的处理器具有对应的C语言编译器和库,然后将C源代码编译、连接成目标二进制文件之后即可运行。
(5)c语言改变执行文件后缀名代码扩展阅读:
C语言是面向过程的编程语言,用户只需要关注所被解决问题的本身,而不需要花费过多的精力去了解相关硬件,且针对不同的硬件环境,在用C语言实现相同功能时的代码基本一致,不需或仅需进行少量改动便可完成移植。
这就意味着,对于一台计算机编写的C程序可以在另一台计算机上轻松地运行,从而极大的减少了程序移植的工作强度。
C语言既有高级语言的特点,又具有汇编语言的特点;既是一个成功的系统设计语言,又是一个实用的程序设计语言;既能用来编写不依赖计算机硬件的应用程序,又能用来编写各种系统程序;是一种受欢迎、应用广泛的程序设计语言。
Ⅵ c代码,改成什么后缀的文件能在window下直接运行
改迟指后缀是不行的,c语言经过编译链接后才能成为可执行的二进制文件。
比如printf(“sdf”)经过编译后会成为一段二进制代码,但是如果没编译则是一段文本。不能执行。
如果你希望可以直樱旦宽接文本执行,你可以试试学习一下dos命令行的编程。比如新建文本文档,然后输入
echo HelloDos
pause
然后改后脊亮缀为bat试试
Ⅶ C语言源程序文件、目标文件和可执行文件的扩展名是什么
C语言源程序文件扩展名:.c
目标文件扩展名:.obj
可执行文件扩展名:.exe
源程序:程序可以用高级语言或汇编语言编写,用高级语言或汇编语言编写的程序称为源程序。C语言源程序的扩展名为“.c”。源程序不能直接在计算机上执行,需要用“编译程序”将源程序编译为二进制形式的代码。
目标程序:源程序经过“编译程序”编译所得到的二进制代码称为目标程序。目标程序
的扩展名为“.obj”。
目标代码尽管已经是机器指令,但是还不能运行,因为目标程序还没有解决函数调用问题,需要将各个目标程序与库函数连接,才能形成完整的可执行程序。
可执行程序:目标程序与库函数连接,形成的完整的可在操作系统下独立执行的程序
称为可执行程序。可执行程序的扩展名为“.exe“。
(7)c语言改变执行文件后缀名代码扩展阅读:
C语言创建程序的步骤:
编辑:就是创建和修改C程序的源代码-我们编写的程序称为源代码。
编译:就是将源代码转换为机器语言。编译器的输出结果成为目标代码,存放它们的文件称为目标文件。扩展名为.o或者.obj。(该部分编译是指汇编器编译汇编语言或者编译器编译高级语言)
链接:链接器将源代码由编译器产生的各种模块组合起来,再从C语言提供的程序库中添加必要的代码模块,将它们组成一个可执行的文件。在windows下扩展名为.exe,Unix下无扩展名。
执行:运行程序。
IT专家网——C语言编程程序编译全过程剖析