如何使用strcpy在任何一种变量中存储Ascii字符a到z?
for(i=97;i<122;i++)
{
for(j=97;j<122;j++)
{
printf("%c%c",i,j);
int a = strcpy(i,j);
}
}
答案 0 :(得分:2)
char a[3] = {0};
for(i=97;i<122;i++)
{
for(j=97;j<122;j++)
{
printf("%c%c\n", i, j);
a[0] = i;
a[1] = j;
printf("%s\n", a);
}
}
答案 1 :(得分:0)
所以(假设是ASCII):
char str[27]={0};
char temp[2]={0};
int i;
for (i='a';i<='z';i++) {
temp[0]=i;
strcpy(str,temp);
}
但你真的需要使用strcpy
吗?
答案 2 :(得分:0)
使用
将Ascii字符存储在任何一种变量中strcpy()
?
您不需要它,因为对于单个字符strcpy()
是不必要的。
此外,您尝试使用strcpy()
处理int
,而此函数处理char*
。
你能做的是这样的事情:
char myarray[3] = {0};
for(i = 97; i < 122; i++)
{
for(j = 97; j < 122; j++)
{
printf("%c%c\n", i, j);
myarray[0] = i;
myarray[1] = j;
printf("%s\n", myarray);
}
}
我使用了char数组,因为如果将ASCII字符存储在int
中,则不能指望它打印相同的字符,因为它存储在char
中。即使您尝试Convert char array to a int number in C,也无法取得成功。
答案 3 :(得分:-1)
你可以在循环中使用类型转换轻松完成
int num = 97;
char a = (char)num; // 'a' = 97 casting int to char
num = (int)a // num = 97 cast 'a' to ASCII
试试吧
答案 4 :(得分:-2)
int main() {
int a = 0;
char c = '\0';
scanf(" %c", &c);
a = c + 0;
printf("%d", a);
}
输出:输入字符的ASCII值。
我提供了代码。请参考。 为什么会这样? 关注分配给int变量a的加法运算。在编译此操作期间,编译器发现变量c是char类型但是; operator +紧挨着它,因此编译器使用存储在c变量中的字符的ascii值。
我希望它对你有所帮助。谢谢。