int fun(char *s) { n=*s-'0';s++; while(*s!=0) {n=n*8+*s-'0'; s++;} return n;

来源:学生作业学帮网 编辑:学帮网 时间:2024/05/29 16:46:16

int fun(char *s) { n=*s-'0';s++; while(*s!=0) {n=n*8+*s-'0'; s++;} return n;

估计你是要把字符串转换成8进制数.要改字符串,直接改str的值就好了.
int fun(char *s)
{ int n=*s-'0';
s++;
while(*s!='\0') {n=n*8+*s-'0'; s++;}
return n;
}
main()
{
char *str="111";
int sum;
sum = fun(str);
printf("\nString = %s\nOctal number = %d\n",str,sum);
getch();
}