您的位置:首页 > 编程语言

Vs2017使用Astyle工具规范代码

2018-02-07 11:37 585 查看
前言:
最新习惯了用Astyle工具,换了Vs2017后,没有了感觉总差点什么~
使用前:
char vendor_serialnumber[0x14]={0};
char* TestData::GetCpuID()
{
std::array<int,4> cpui; //#include <array>
__cpuid(cpui.data(),0x0); //cpui[0] = "funcition_id的最大值"
int nIds_=cpui[0];
std::vector<std::array<int,4>> data_; //保存遍历到的所有cpui的值
for(int i=0;i<=nIds_;++i)
{
__cpuidex(cpui.data(),i,0);
data_.push_back(cpui);
}
//reinterpret_cast<int*>(vendor) //*reinterpret_cast<int*>(vendor)
//索引0 0+4 0+8的值构成了CPU芯片的名称
char vendor[0x20]={0};
*reinterpret_cast<int*>(vendor)=data_[0][1];
*reinterpret_cast<int*>(vendor+4)=data_[0][3];
*reinterpret_cast<int*>(vendor+8)=data_[0][2]; // vendor="GenuineIntel"
std::string vendor_=vendor;
sprintf_s(vendor_serialnumber,sizeof(vendor_serialnumber),"%08X",data_[1][0]);
return vendor_serialnumber;
}

使用后:char vendor_serialnumber[0x14] = {0};
char* TestData::GetCpuID()
{
std::array<int, 4> cpui; //#include <array>
__cpuid( cpui.data(), 0x0 ); //cpui[0] = "funcition_id的最大值"
int nIds_ = cpui[0];
std::vector<std::array<int, 4>> data_; //保存遍历到的所有cpui的值

for( int i = 0; i <= nIds_; ++i )
{
__cpuidex( cpui.data(), i, 0 );
data_.push_back( cpui );
}

//reinterpret_cast<int*>(vendor) //*reinterpret_cast<int*>(vendor)
//索引0 0+4 0+8的值构成了CPU芯片的名称
char vendor[0x20] = {0};
*reinterpret_cast<int*>( vendor ) = data_[0][1];
*reinterpret_cast<int*>( vendor + 4 ) = data_[0][3];
*reinterpret_cast<int*>( vendor + 8 ) = data_[0][2]; // vendor="GenuineIntel"
std::string vendor_ = vendor;
sprintf_s( vendor_serialnumber, sizeof( vendor_serialnumber ), "%08X", data_[1][0] );
return vendor_serialnumber;
}效果很明显。。。VS2017使用方法:
工具--扩展和更新:搜索Astyle(其他的工具都可以在这里安装),安装即可
工具--选项--Astyle Formatter:编辑添加(这只是我的设置,可以根据自己需求设置,方法百度~)
--style=ansi -f -U -p -N -D --mode=c--pad-oper

工具--环境--键盘:设置对应的快捷键即可

20180326
更新补充VS2005中使用方法:
1、http://sourceforge.net/projects/astyle官网下载

2、解压后的exe文件放到VS2005执行程序同目录
3、打开VS2005,工具--外部工具中添加即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: