c++中如何将一个文件中的char c="abcd"按照16进制输出并转换成10进制?
3个回答
展开全部
你的意思是不是十六进制输出一遍,再转换成十进制输出一遍。
十六进制输出:cout<<hex<<x<<endl;
十进制输出:cout<<dec<<x<<endl;
x即为你要输出的数。
文件中的数你可以先读出来 然后再在屏幕上打印。
十六进制输出:cout<<hex<<x<<endl;
十进制输出:cout<<dec<<x<<endl;
x即为你要输出的数。
文件中的数你可以先读出来 然后再在屏幕上打印。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
就是char c=“abcd”这个编译会失败的。同意楼上说的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
#include <string.h>
int main()
{
char c[] = "abcd";
int i=0,j;
for(j=0;j<strlen(c);j++)
if('a'<=c[j]&&c[j]<='f')
i=i*16+10+c[j]-'a';
else if('A'<=c[j]&&c[j]<='F')
i=i*16+10+c[j]-'A';
else
i=i*16+c[j]-'0';
printf("%s\n",c);
printf("%d\n",i);
return 0;
}
#include <string.h>
int main()
{
char c[] = "abcd";
int i=0,j;
for(j=0;j<strlen(c);j++)
if('a'<=c[j]&&c[j]<='f')
i=i*16+10+c[j]-'a';
else if('A'<=c[j]&&c[j]<='F')
i=i*16+10+c[j]-'A';
else
i=i*16+c[j]-'0';
printf("%s\n",c);
printf("%d\n",i);
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询