#include<stdio.h>
#include<string.h>
void daoxu(char x[],int n)
{
char s;
int k;
for(k=0;k<n/2;k++)
{
s=x[k];x[k]=x[n-k-1];x[n-k-1]=s;
}
}
#define MA 100
main()
{
char a[MA];
int m;
scanf("%s",a);
printf("%s\n",a);
m=strlen(a);
daoxu(a,m);
printf("%s\n",a);
}
前面的函数明明是void,没有返回值,但为什么会起作用
上面daoxu(char x[],int n)是字符型,可是输入数字也成立,这是为什么?
还有下面这个函数有什么问题?求解
数字也可以使用字符类型来表示,使用的是其ASCII码。
fanxu函数的返回值是char类型,但是return的是一个数组str1。
所以返回值只是str1的地址的低8位。
void main()
{
char a[MA];
int m;
scanf("%s",a);
printf("%s\n",a);
m=strlen(a);
daoxu(a,m);
printf("%s\n",a);
}