【发布时间】:2013-08-10 22:45:15
【问题描述】:
我想制作一个程序,将3www2as3com0 转换为www.as.com,但一开始我遇到了麻烦;我想将字符串的第一个数字(字符 3)转换为整数以使用 strncpy 或 strchr 等函数,所以当我打印转换后的 int 时,程序显示 51 而不是 3。有什么问题?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char** argv) {
/* argv[1]--->3www2as3com0*/
char *string;
char *p;
string=argv[1];
p=string;
char cond,cond2;
cond=*p; //I want to have in cond the number 3
cond2=(int)cond; //I want to convert cond (a char) to cond2(an int)
printf("%d",cond2); //It print me 51 instead of 3
return (EXIT_SUCCESS);
}
【问题讨论】:
标签: c pointers casting char int