昨天我必须解决一道考试题目,但很遗憾,我失败了。
这个问题是要创建一个C函数,并遵循以下规则:
- 编写一个函数,该函数接受一个字符串并将该字符串反向显示,然后加上换行符。
- 它的原型构建如下:char *ft_rev_print(char *str)
- 它必须返回其参数
- 只允许使用函数“write”(因此不能使用printf或其他函数)
int ft_strlen(char *str) /*to count the length of the original string*/
{
int i;
i = 0;
while (str[i])
i++;
return (i);
}
char *ft_rev_print (char *str)
{
int i;
i = ft_strlen(str);
while (i)
{
write (1, (str +1), 1);
i--;
}
return (str); /*returning its argument */
}
int main(void) /*IT HAD TO WORK WITH THIS MAIN, DID NOT WROTE THIS MYSELF!*/
{
ft_rev_print("rainbow dash");
write(1, "\n", 1);
return (0);
}
我试了很久,但无法使其正常工作。现在我正在为此烦恼。我做错了什么?我错过了什么?
提前致谢!