精华内容
下载资源
问答
  • C++文件后缀名

    千次阅读 2015-01-14 08:48:43
    C++程序文件的额后缀与所运行...这几种后缀名没有区别,如果编译器支持的话,哪种后缀都是一样的,在C++ Primer上给出如下说明: Unix uses: C, cc, cxx, c GNU C++ uses: C, cc, cxx, cpp, c++ Digital Mars uses:

    C++程序文件的额后缀与所运行的具体编译器有关,常见的有:.cc   .cxx    .cpp   .cp    .C   .c++

    这几种后缀名没有区别,如果编译器支持的话,哪种后缀都是一样的,在C++ Primer上给出如下说明:

    Unix uses: C, cc, cxx, c

    GNU C++ uses: C, cc, cxx, cpp, c++

    Digital Mars uses: cpp, cxx

    Borland C++ uses: cpp

    Watcom uses: cpp

    Microsoft Visual C++ uses: cpp, cxx, cc

    Metrowerks CodeWarrior uses: cpp, cp, cc, cxx, c++

    展开全文
  • Visual C++文件后缀名释义

    千次阅读 2014-07-30 09:22:41
    VisualC++文件后缀名释义 [1] .APS:存放二进制资源的资源辅助中间文件(可加快资源装载速度)。 [2] .BMP:位图资源文件。 [3] .BSC:浏览信息文件。由浏览信息维护工具(BSCMAKE)从原始浏览信息文件(.SBR)中...

    VisualC++文件后缀名释义

    [1] .APS:存放二进制资源的资源辅助中间文件(可加快资源装载速度)。

    [2] .BMP:位图资源文件。

    [3] .BSC:浏览信息文件。由浏览信息维护工具(BSCMAKE)从原始浏览信息文件(.SBR)中生成,BSC文件可以用来在源代码编辑窗口中进行快速定位。可在project options里去掉Generate Browse Info File,这样可加快编译进度。

    [4] .C:用C语言编写的源代码文件。

    [5] .CLW:ClassWizard生成的存放类信息的文件。

    [6] .CNT:用来定义帮助文件中“Contents”的结构。

    [7] .CPP或.CXX:用C++语言编写的源代码文件。

    [8] .CUR:光标资源文件。

    [9] .DEF:模块定义文件,供生成动态链接库使用。

    [10] .DLG:定义对话框资源的独立文件。对于VC工程非必需,因VC一般把对话框资源放在.RC文件中。

    [11] .DSP:VC开发环境生成的工程文件,VC4及以前版本使用MAK文件来定义工程。项目文件,文本格式。

    [12] .DSW:VC开发环境生成的WorkSpace文件,用来把多个工程组织到一个WorkSpace中,与.dsp相似。

    [13] .EXP:由LIB工具从DEF文件生成的输出文件,其中包含了函数和数据项目的输出信息,LINK工具将使用EXP文件来创建动态链接库。只有在编译DLL时才会生成,记录了DLL文件中的一些信息。

    [14] .H、.HPP或.HXX:用C/C++语言编写的头文件,通常用来定义数据类型,声明变量、函数、结构和类。

    [15] .HLP:Windows帮助文件。

    [16] .HM:在Help工程中,该文件定义了帮助文件与对话框、菜单或其它资源之间ID值的对应关系。

    [17] .HPJ:由Help Workshop生成的Help工程文件,用来控制Help文件的生成过程。

    [18] .HPG:生成帮助的文件的工程。

    [19] .ICO:图标资源文件。

    [20] .ILK:连接过程中生成的一种中间文件,只供LINK工具使用。

    [21] .INI:配置文件。

    [22] .LIB:库文件,LINK工具将使用它来连接各种输入库,以便最终生成EXE文件。

    [23] .LIC:用户许可证书文件,使用某些ActiveX控件时需要该文件。

    [24] .MAK:即MAKE文件,VC4及以前版本使用的工程文件,用来指定如何建立一个工程。

    [25] .MAP:由LINK工具生成的文本文件,包含被连接程序的某些信息,执行文件的映像信息记录文件。

    [26] .MDP:旧版本的项目文件,相当于.dsp。

    [27] .NCB:NCB是“No Compile Browser”的缩写,其中存放了供ClassView、WizardBar和ComponentGallery使用的信息,编译工程后会自动生成。当自动完成功能出问题时可删除此文件。

    [28] .OBJ:由编译器或汇编工具生成的目标文件,是模块的二进制中间文件。

    [29] .ODL:用对象描述语言编写的源代码文件,VC用它来生成TLB文件。

    [30] .OLB:带有类型库资源的一种特殊的动态链接库,也叫对象库文件。

    [31] .OPT:VC开发环境自动生成的存放WorkSpace中各种选项的文件。工程关于开发环境的参数文件。

    [32] .PBI、.PBO和.PBT:由VC的性能分析工具PROFILE生成并使用的三种文件。

    [33] .PCH:预编译头文件,较大,由编译器在建立工程时自动生成,其中存放有工程中已经编译的部分代码,在以后建立工程时不再重新编译这些代码,以便加快整个编译过程的速度。

    [34] .PDB:程序数据库文件,在建立工程时自动生成,其中存放程序的各种信息,用来加快调试过程的速度。记录了程序有关的一些数据和调试信息。

    [35] .PLG:编译信息文件,编译时的error和warning信息文件。

    [36] .RC:资源定义文件。              .RC2:资源定义文件,供一些特殊情况下使用。

    [37] .REG:注册表信息文件。.RES:二进制资源文件,资源编译器编译资源定义文件后即生成RES文件。

    [38] .RTF:Rich Text Format(丰富文本格式)文档,可由Word或写字板来创建,常被用来生成Help文件。

    [39] .SBR:VC编译器为每个OBJ文件生成的原始浏览信息文件。

    [40] .TLB:OLE库文件,其中存放了OLE自动化对象的数据类型、模块和接口定义。

     

    展开全文
  • //修改后缀名 路径不变 std::string file = "standford/mario_object_templates.txt"; std::ifstream input(file); std::string ply_file, pcd_file; while (input.good()) //判断文件是否结束 { std::...

    学习点云库PCL过程中,总会遇到数据格式转换,流行的3D数据基准库 大都是ply格式的,并且是二进制格式,ply在PCL库中是可以处理的,但是更好的做其他处理,我一般都先把ply转pcd,方便的以后处理,格式转为ascii的,这样就可以用txt ultraedit打开  其数据是可看到的。

    <span style="background-color: rgb(255, 255, 255);">去年的时候 曾经做过 转过,但是当时由于没有备份,所以现在又折腾两天处理数据格式问题,太多的坑,太浪费时间了,所以今天 记录在案  程序及说明</span>

    首先上一些网址  这些都是做研究 很官方 很有名的3D数据库
    http://www.cs.washington.edu/node/4669
    htp://rgbd-dataset.cs.washington.edu/
    http://rgbd-dataset.cs.washington.edu/dataset/rgbd-scene-labeling/
    http://staffhome.ecm.uwa.edu.au/~00053650/recognition.html
    http://www.vision.deis.unibo.it/keypoints3d/?page_id=2
    http://staffhome.ecm.uwa.edu.au/~00053650/
    http://graphics.stanford.edu/data/3Dscanrep/
    http://www.vision.deis.unibo.it/research/78-cvlab/80-shot
    ply 一般有两种格式 头文件处理VCGLIB生成 的ply 用简单的程序ply->pcd 就可以转化pcd,VTK 生成的 则 ply->vtk->pcd, 程序如下


    </pre><pre code_snippet_id="1654405" snippet_file_name="blog_20160420_1_7281699" name="code" class="cpp">
    /*  两种格式都能处理
    		//pcd文件显示
    		pcl::PointCloud<pcl::PointXYZRGBA>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZRGBA>());
    		//pcl::io::loadPCDFile("model1.pcd",*cloud);
    
    		//ply文件显示
    		pcl::PolygonMesh mesh;
    		vtkSmartPointer<vtkPolyData> polydata = vtkSmartPointer<vtkPolyData>::New();
    
    		pcl::io::loadPolygonFilePLY("mario/Scene1.ply", mesh);
    		// ply另存vtk
    		//pcl::io::saveVTKFile("temp.vtk", mesh);
    		pcl::io::mesh2vtk(mesh, polydata);			
    
    		pcl::io::vtkPolyDataToPointCloud(polydata, *cloud);
    
    		//两种存贮方式 pcd另存pcd
    		pcl::PCDWriter pcdwriter;
    		//pcdwriter.write<pcl::PointXYZRGBA>("save_ply2vtk2pcd.pcd", *cloud);
    		pcl::io::savePCDFileASCII("mario/Scene11.pcd", *cloud);
    
    */
    	/*VCGLIB生成 的ply
    		pcl::PCLPointCloud2 clod;
    		pcl::io::loadPLYFile("mario/Scene1.ply", clod);
    		pcl::io::savePCDFile("mario/Scene111.pcd", clod);
    	*/
    	/*VCGLIB生成 的ply
    	    pcl::PCLPointCloud2 clod;
    		pcl::PLYReader reader;
    		reader.read("mario/Scene1.ply", clod);
    		pcl::PCDWriter writer;
    		writer.writeASCII("mario/Scene1111.pcd", clod);   writeBinary
    
    	*/

    ply 的数据 一般都是 

    点属性:xyzrgba  

    边属性:索引值 

    由于pcd的颜色编码不同,程序吧ply转出pcd后,颜色值四通道 变成一个值,以上三种转法,会把ply的rgba数据 转化 很大的一个数 几千万 真的,我当时也蒙了,难道说颜色丢失了 没有转换过了,但是想到去年的时候,确实颜色也转过来了,我就用显示pcl viewer 来看颜色是否转过来了

    有个坑 

    		pcl::PointCloud<pcl::PointXYZRGBA>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZRGBA>());
    		pcl::io::loadPCDFile("mario/Scene1111.pcd", *cloud);
    
    
    		boost::shared_ptr<pcl::visualization::PCLVisualizer> viewe(new pcl::visualization::PCLVisualizer("ss"));
    		viewe->initCameraParameters();
    		viewe->setBackgroundColor(0.3,0.3,0.3);
    		viewe->addCoordinateSystem(1.0f);
    		pcl::visualization::PointCloudColorHandlerRGBField<pcl::PointXYZRGBA> color(cloud);
    		viewe->addPointCloud<pcl::PointXYZRGBA>(cloud, color, "cloud");
    		viewe->setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_FONT_SIZE, 3, "cloud");
    		while (!viewe->wasStopped())		{
    			viewe->spinOnce(100);
    			boost::this_thread::sleep(boost::posix_time::microseconds(100000));
    
    		}

    显示转后后的pcd是否颜色也转过来,有个坑 就是

    pcl::visualization::PointCloudColorHandlerRGBField<pcl::PointXYZRGBA> color(cloud);
    PointCloudColorHandlerRGBField 一定不能写成 RGBAField,尽管pcd是PointXYZRGBA格式的,这样才能完全显示颜色 保真


    
    

    转换代码已经知道,但是一个一个转 程序确实感觉臃肿,,用批处理,保证代码简洁。两种方法

    第一种 stringstream  名字要整齐一致 

    stringstream ss_tou;
    	ss_tou<<"E://datasets//SHOT//dataset4 kinect cvlab//3D models scenes//CVLab//xx//";  // 最后一定要zai加个   //
    
    	for (int i = 1; i<24; i++)
    	{
        stringstream ss;
    	ss<<ss_tou.str()<<i<<".ply";
     

    第二种 把所有ply放到一个data文件下,在定义一个txt,存放个ply的相对路径,这种方法不对名字做要求,俺现在就用的这种


    	pcl::PointCloud<pcl::PointXYZRGBA>::Ptr clud(new pcl::PointCloud<pcl::PointXYZRGBA>());
    	//pcl::io::loadPCDFile("model1.pcd",*cloud);
    
    
    
    	//修改后缀名 路径不变
    	std::string file = "standford/mario_object_templates.txt";
    
    	std::ifstream input(file);
    	std::string ply_file, pcd_file;
    	while (input.good())   //判断文件是否结束
    	{
    		
    		std::getline(input, ply_file);
    		std::string::size_type pos = ply_file.rfind("ply");   // 双字符
    		if (ply_file.empty() || ply_file.at(0) =='#' )
    		 continue;
    
    		pcl::PolygonMesh mesh;
    		vtkSmartPointer<vtkPolyData> polydata = vtkSmartPointer<vtkPolyData>::New();
    
    		pcl::io::loadPolygonFilePLY(ply_file, mesh);
    		pcl::io::mesh2vtk(mesh, polydata);
    		pcl::io::vtkPolyDataToPointCloud(polydata, *clud);
    
    		pcd_file = ply_file;
    
    		if (pos != std::string::npos)           //npos就是到头了
    		      pcd_file.replace(pos, 3, "pcd");  // 双字符
    
    		pcl::io::savePCDFile(pcd_file, *clud);
    		
    
    	}
    	input.close();

    txt





    展开全文
  • 使用标准的函数接口来,以最简单的方式来做: #include &lt;string&...// 获取文件类型 string MainWindow::fileType(string extention) { //return extention.substr(extention.find_...

    使用标准的函数接口来,以最简单的方式来做:

    #include <string>
    #include <iostream>
    
    using namespace std;
    
    // 获取文件类型
    string MainWindow::fileType(string extention)
    {
        //return extention.substr(extention.find_last_of('.')+1,extention.length()-1);
        //or
        //return extention.substr(extention.find_last_of('.') + 1);
        //or
        return   extention.erase(0,extention.find_last_of('.')+1);
    }

    因为会改变原字符串的内容,所以传入的参数需要是拷贝复制,不能是引用和指针。

    展开全文
  • C/C++ 文件后缀名

    千次阅读 2020-02-16 14:01:26
    C和C++并不是同一种编程语言,如果你使用了C中的相关代码片段而后缀名保存为了C++文件后缀名是无法运行的即是一个错误的程序,所以我们要对相应的代码保存为相应后缀名的文件。 下面跟我一起来看一下C/C++的后缀名...
  • c++源文件后缀名

    2019-10-02 00:13:30
    C中: 头文件后缀名:.h ...源文件后缀名:.cpp, .cc, .cxx, .C .c++ 现在文件后缀已经不是那么重要了。即便是include的时候都能include源文件。 要知道,当时本科学习的时候课本上讲的是include头文件呢...
  • C++文件后缀

    2014-09-18 10:20:55
    参考了C++ Primer Plus第五版中文版 P8 C++实现 源代码的扩展 UNIX C、cc、cxx、c GNU C++ C、cc、cxx、cpp、c++ Borland C++ Cpp Microsoft Vi
  • 【C/C++】C/C++ 文件后缀名

    千次阅读 2018-09-17 11:13:55
    Ref C++源文件的后缀名问题 : 总结的很到位了 *
  • C/C++读取判断文件后缀名

    千次阅读 2018-12-28 14:38:30
    通过判断dot的位置获取读入文件后缀名,并使其与指定的后缀名进行对比,一致时返回真值,只使用简单的字符数组操作。 bool decide_ext(char *gname,char *nsuff) // gname: name of the given file // nsuff: ...
  • c++如何批量修改文件后缀名

    千次阅读 2016-01-28 11:04:59
    1、问题描述 ...本篇文章仅仅对如何用c++做图片批处理修改后缀名做一些说明。 2、c++程序 程序思路:先获取到文件夹下所有文件的名字,然后,用newname取代原来的oldname。#include "stdafx.h"#include
  • C/C++判断文件后缀名

    千次阅读 2018-04-04 15:16:27
    1.  std::string name("***.**"); std::string extension("**"); name.compare(name.size() - extension.size(), extension.size(), extension) == 0;... std::cout 支持文件格式:*.pcd和*.ply!" ; return(-1); }
  • C++源文件后缀名

    千次阅读 2017-09-20 17:26:18
    VC里用cpp作后缀名, 在GCC里默认采用C、cc、cxx作为后缀名 .cpp, .h (VS file) .cc, .h (GCC file)   C中: 头文件后缀名: .h 源文件后缀名: .c   C++中: 头文件后缀名: .h, ....
  • c++ 获取文件后缀名

    千次阅读 2011-08-26 21:07:13
    CString WINAPI GetFileExt(CString strTemp) {  int k=strTemp.ReverseFind('.');  if(k>=0)  return strTemp.Mid(k);  else  return strTem
  • 以下这段是VC中过去文件后缀名的方法 1。CString GetSuffix(CString strFileName) { return strFileName.Right(strFileName.GetLength()-strFileName.ReverseFind('.')-1); }2。PathFindExtension3。忽略...
  • C++检测文件后缀名

    2017-01-12 12:42:39
    #include #include <iostream>bool has_suffix( const std::string& filename, const std::string& suffix ) { std::size_t index = filename.find( suffix, filename.size( ) - suffix.size( ) );...
  • C++动手写了个小工具:给指定目录下的除目录外的所有文件添加指定的后缀名。  使用方法:./rename_file 目录名 后缀名   使用示例:./rename_file /home/qiang1994/hello .html  //给/home
  • C/C++ 读取并判断文件后缀名

    千次阅读 2014-07-22 09:46:18
    //filePath为文件路径, bool AnalyticalDecoder::decideSuffix( char* filePath, char* suffix ) {  char* fileExt;  char *ptr, c = '.';  //最后一个出现c的位置  ptr = strrchr(filePath, c); ...
  • 给source insight添加.cc的C++文件后缀识别  今天在读mysql代码的时候,发现.cc结尾的文件都没有添加进来,google下了,发现原来这么操作一下就ok了 Options -> Document Options, Document Type 下拉选 C++ ...
  • C++ 获取指定文件夹下指定后缀名文件
  • C++后缀名

    千次阅读 2009-02-16 10:10:00
    VC++中各种后缀名文件的意思.h头文件.cpp源文件.dsw工程文件----可以没有.dsp工程文件-----一定要有.clw 支持ClassWizard .ncb 支持ClassView .opt 保存工作空间的配置 .aps 支持ResourceView .bsc 浏览器信息文件 ....
  • 在更新单点定位程序之前,先说一下C++中如何获取一个文件夹下带有指定文件后缀名的文件绝对路径。由于在调试单点定位程序的时候,我总是不停地输入观测值文件(.o)和卫星星历文件(.n)。因此就要不断地的复制粘贴...
  • C++_文件后缀

    千次阅读 2018-10-09 14:48:44
    C++实现 源代码的扩展 UNIX C、cc、cxx、c GNU C++ C、cc、cxx、cpp、c++ Borland C++ Cpp Microsoft Visual C++ cpp、cxx、cc   头文件,常见,扩展: .h, .hpp, .hxx, hh, HH, H   实际测试: ...
  • VC里用cpp作后缀名, 在GCC里默认采用C、cc、cxx作为后缀名 .cpp, .h (VS file).cc, .h (GCC file) C中: 头文件后缀名: .h 源文件后缀名: .c
  • C++实现遍历指定目录下的[指定文件后缀名]文件 #include stdio.h>#include direct.h>#include string>#include windows.h>using namespace std;void search_directory(const string& caseFileName)...{...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 62,738
精华内容 25,095
关键字:

c++文件后缀名

c++ 订阅