
1
在自己电脑上找到VS2012快捷方式,或者在开始菜单那里启动VS2012:
2
在VS2012主界面,菜单选择Tools->Extensions And Updates:
d出新窗口。在新窗口中左边菜单选择Online,等待加载完成:
然后在输入框里输入“Compare”,点击回车:
会看到列表发生变化,在列表中选择“Code Compare”,点击“Download”进行下载:
下载到桌面,得到一个codecompareexe:
双击启动,进行安装,一步一步的“next”,同意协议、安装目录选择、命名等等:
到此安装界面时,选择安装组件,按照自己需求进行选择:
然后继续安装,指导安装完成:
因为上一步勾选了启动软件,所以软件会自动启动。启动后,会出现一个窗口,在窗口中选择Free:
选择Free后,会出现一个输入框,在输入框中输入自己的名字,点击OK,软件就可以使用了:
那么,如何进行比较呢?
有两种方式:第一种是直接使用此软件进行文件比较。找到要比较的两个文件,选中后,右键选择“Compare with Code Compare”:
13
第二种是在VS2012中比较两个代码文件。
启动VS2012,打开一个工程,选中两个文件,右键选择“Compare files”:在 工具->选项->调试->常规 中,更改以下设置:
禁用:启用“仅我的代码”、逐过程执行属性和运算符(仅限托管)、要求源文件与原始版本完全匹配
启用:启用 NET framework 源代码单步执行、启用源服务器支持#include <stdioh>
#include <stringh>
#define FILE_NAME "testtxt"
#define is_upper(x) (x >= 'A' && x <= 'Z')
#define is_lower(x) (x >= 'a' && x <= 'z')
int freq[256];
char buffer[1024];
void upper_to_lower(char src)//大写转小写
{
int i = 0;
while(src[i])
{
if(is_upper(src[i])) src[i] += 'a'-'A';
i ++;
}
}
void lower_to_upper(char src)//小写转大写
{
int i = 0;
while(src[i])
{
if(is_lower(src[i])) src[i] += 'A'-'a';
i ++;
}
}
void init_file(void)
{
char a[]="abcd hgh s1 i cannot play around";
FILE fp;
fp = fopen(FILE_NAME, "wb");
fputs(a, fp);
fclose(fp);
}
void read_file(char dst)
{
FILE fp;
int c, i = 0;
fp = fopen(FILE_NAME, "rb");
if(fp == NULL)
{
init_file();
fp = fopen(FILE_NAME, "rb");
}
while((c=fgetc(fp)) != EOF) dst[i ++] = c;
fclose(fp);
}
void get_freq(char src)
{
int i = 0;
while(src[i])
{
freq[(unsigned)src[i]] ++;
i ++;
}
}
int main()
{
int i;
read_file(buffer);
puts(buffer);
get_freq(buffer);
for(i = 0; i < 256; i ++)
if(freq[i]) printf("%c[0x%02x]: %d\n", (char)i, (unsigned char)i, freq[i]);
return 0;
}
基本思路就是先把文件中的数据读到buffer里面,然后对buffer进行处理。
在main中没有对大小写处理,如果需要的话,可以调大小写转换upper_to_lower/lower_to_upper
可以把整个字符串中的数据转换
get_freq计算从0-255所有数据出现的次数,如果确定文件中只有数字 空格 英文字母等 可以减小到128
1、代码如下:
2、debug:VS2012
#include<iostream>using namespace std;
void graphFunc(int baseLine = 4)
{
//正向金字塔
for(int i=0;i!=baseLine;i++)
{
//格式化空格;
for(int spac=0;spac!=baseLine-i-1;spac++)
cout << " ";
//核心输出
for(int j=0;j!=2i+1;j++)
{
if(j==0 || j==2i)
cout << "";
else
cout << " ";
}
cout << endl;
}
//反向金字塔
for(int i=baseLine-1;i!=0;i--)
{
//格式化空格
for(int spac=0;spac!=baseLine-i;spac++)
cout << " ";
//核心输出
for(int j=0;j!=2i-1;j++)
{
if(j==0 || j==2(i-1))
cout << "";
else
cout << " ";
}
cout << endl;
}
}
int main()
{
graphFunc(5);
return 0;
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)