社区
C++ 语言
帖子详情
哪位大哥大姐可以帮我弄好这个程序啊。。。
roger0710
2009-04-17 07:45:08
一个小程序,把十六进制文本转换成十六进制数值,但是就是不对啊,哪位大哥大姐愿意帮忙,我发给你啊。。。这里居然总说我上传错误。。。啊。。。要疯了。。。
...全文
140
11
打赏
收藏
哪位大哥大姐可以帮我弄好这个程序啊。。。
一个小程序,把十六进制文本转换成十六进制数值,但是就是不对啊,哪位大哥大姐愿意帮忙,我发给你啊。。。这里居然总说我上传错误。。。啊。。。要疯了。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
roger0710
2009-04-17
打赏
举报
回复
能通过,但是会将信息写入两遍,我用的vc6
jackyjkchen
2009-04-17
打赏
举报
回复
[Quote=引用 9 楼 roger0710 的回复:]
不懂,什么意思啊?
[/Quote]
别告诉我你原来能编译通过……你到底要问什么啊
roger0710
2009-04-17
打赏
举报
回复
不懂,什么意思啊?
jackyjkchen
2009-04-17
打赏
举报
回复
注意的作用域,只在大括号内,把int i放到循环外面就行了
roger0710
2009-04-17
打赏
举报
回复
代码我贴 在上面了
liliangbao
2009-04-17
打赏
举报
回复
LS的好狠~
贴出你的要求,或代码看一看~
roger0710
2009-04-17
打赏
举报
回复
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
#include <stdlib.h>
#include <stdio.h>
using namespace std;
#define MAX 1024
string& replace_all(string& str,const string& old_value,const string& new_value)
{
while(true)
{
string::size_type pos(0);
if((pos=str.find(old_value)) != string::npos)
{
str.replace(pos,old_value.length(),new_value);
}
else
{
break;
}
}
return str;
}
int trans(char ch1);
int strToDec(string s)
{
char c[3];
strcpy(c,s.c_str());
int first=trans(c[0]);
int second=trans(c[1]);
int ans=first*16+second;
return ans;
}
int trans(char ch1)
{
int ans;
switch(ch1)
{
case '0':
ans =0;
break;
case '1':
ans=1;
break;
case '2':
ans=2;
break;
case '3':
ans=3;
break;
case '4':
ans=4;
break;
case '5':
ans=5;
break;
case '6':
ans=6;
break;
case '7':
ans=7;
break;
case '8':
ans=8;
break;
case '9':
ans=9;
break;
case 'A':
case 'a':
ans=10;
break;
case 'B':
case 'b':
ans=11;
break;
case 'C':
case 'c':
ans=12;
break;
case 'D':
case 'd':
ans=13;
break;
case 'E':
case 'e':
ans=14;
break;
case 'F':
case 'f':
ans=15;
break;
}
return ans;
}
string DecToStr(int num[],int length)
{
char x1;
string s,ss;
for(int i=0;i <length;i++)
{
x1=(char)num[i];
s+=x1;
}
return s;
}
int main()
{
vector <int> test;
int arr[16];
const char * srcfile = "c:\\1.txt";
const char * desfile = "d:\\2.txt";
char buffer[MAX];
char tmp[16];
int len;
ifstream file1(srcfile);
ofstream file2(desfile);
string strarr[16];
while(file1)
{
file1.getline(buffer,MAX);
string str(buffer);
char cc[3];
replace_all(str,"\t","");
replace_all(str," ","");
//cout < <str < <endl;
for (int i=0;i <str.length();i+=2)
{
strarr[i/2]=str.substr(i,2);
}
//cout < <arr[i];
for(i=0;i <16;i++)
{
arr[i]=strToDec(strarr[i]);
cout < <arr[i] < <" ";
}
string str1;
str1=DecToStr(arr,16);
file2.write(str1.c_str(),str1.length());
}
file1.close();
file2.close();
cout < <"写入完成!" < <endl;
return 0;
}
// char dgt[2];
// int x1;
// int i,j;
// unsigned long int y;
//
//
// s='b';
//
//
// if(s>='A')
// x1=(int)(s+10-'A');
// else
// x1=(int)(s-'0');
//
//
// cout < <x1 < <endl;
roger0710
2009-04-17
打赏
举报
回复
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
#include <stdlib.h>
#include <stdio.h>
using namespace std;
#define MAX 1024
string& replace_all(string& str,const string& old_value,const string& new_value)
{
while(true)
{
string::size_type pos(0);
if((pos=str.find(old_value)) != string::npos)
{
str.replace(pos,old_value.length(),new_value);
}
else
{
break;
}
}
return str;
}
int trans(char ch1);
int strToDec(string s)
{
char c[3];
strcpy(c,s.c_str());
int first=trans(c[0]);
int second=trans(c[1]);
int ans=first*16+second;
return ans;
}
int trans(char ch1)
{
int ans;
switch(ch1)
{
case '0':
ans =0;
break;
case '1':
ans=1;
break;
case '2':
ans=2;
break;
case '3':
ans=3;
break;
case '4':
ans=4;
break;
case '5':
ans=5;
break;
case '6':
ans=6;
break;
case '7':
ans=7;
break;
case '8':
ans=8;
break;
case '9':
ans=9;
break;
case 'A':
case 'a':
ans=10;
break;
case 'B':
case 'b':
ans=11;
break;
case 'C':
case 'c':
ans=12;
break;
case 'D':
case 'd':
ans=13;
break;
case 'E':
case 'e':
ans=14;
break;
case 'F':
case 'f':
ans=15;
break;
}
return ans;
}
string DecToStr(int num[],int length)
{
char x1;
string s,ss;
for(int i=0;i<length;i++)
{
x1=(char)num[i];
s+=x1;
}
return s;
}
int main()
{
vector<int> test;
int arr[16];
const char * srcfile = "c:\\1.txt";
const char * desfile = "d:\\2.txt";
char buffer[MAX];
char tmp[16];
int len;
ifstream file1(srcfile);
ofstream file2(desfile);
string strarr[16];
while(file1)
{
file1.getline(buffer,MAX);
string str(buffer);
char cc[3];
replace_all(str,"\t","");
replace_all(str," ","");
//cout<<str<<endl;
for (int i=0;i<str.length();i+=2)
{
strarr[i/2]=str.substr(i,2);
}
//cout<<arr[i];
for(i=0;i<16;i++)
{
arr[i]=strToDec(strarr[i]);
cout<<arr[i]<<" ";
}
string str1;
str1=DecToStr(arr,16);
file2.write(str1.c_str(),str1.length());
}
file1.close();
file2.close();
cout<<"写入完成!"<<endl;
return 0;
}
// char dgt[2];
// int x1;
// int i,j;
// unsigned long int y;
//
//
// s='b';
//
//
// if(s>='A')
// x1=(int)(s+10-'A');
// else
// x1=(int)(s-'0');
//
//
// cout<<x1<<endl;
sherrik
2009-04-17
打赏
举报
回复
acm?
猫已经找不回了
2009-04-17
打赏
举报
回复
贴代码看看.
jackyjkchen
2009-04-17
打赏
举报
回复
粘贴出来,CSDN不支持上传……囧得很
我明年要去上海工作,请
大哥
大姐
给个意见
作者是一名从事J2EE开发的
程序
员,在郑州工作一年后考虑转战上海以求更好的职业发展。面对金融危机,他寻求关于上海就业市场的建议。
大哥
大姐
,
帮
小弟一个忙啊。。。关于二进制文件保存为jpeg图像。。。急啊。。。
博主遇到的问题是如何将经过处理的JPEG图像的二进制形式重新保存为可正常预览的JPEG图像。当前已实现了从JPEG到二进制文本的转换并提取了EXIF信息。
手机品牌销声匿迹,从
大哥
大到智能手机,Android统治全场!
手机市场历经变迁,从
大哥
大到智能手机,许多品牌消失,Android操作系统凭借其开源特性和丰富的应用生态,成为用户首选,主导手机市场。随着技术发展和用户需求变化,Android市场份额不断扩大,展示出其强大的生命力。
爬虫中的
大哥
大-scrapy框架介绍
本文介绍了Scrapy框架的重要性和安装步骤,详细讲解了创建项目、爬虫、设置、实战应用,包括settings和starts配置,以及如何获取并处理网页信息。适合初学者快速上手爬虫开发。
测试中那些悲桑的。。。
文章讲述了测试工程师在工作中遇到的各种挑战,如临近发版时发现重大错误导致通宵工作,发版计划突然取消,功能被高层否决,用户需求不断变动,时间紧迫以及公司减员等困境,展现了IT行业从业者不易的一面。,
C++ 语言
65,210
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章