我的教授希望我们创建这种方法:
int strrindex(char s[], char t[])
在与main的单独文件中,并使其返回s中最右边出现的t的索引。我的第一个想法是从右到左遍历数组,找到第一次出现的t [0]然后检查序列的其余部分是否匹配,如果不是继续从右到左搜索下一个匹配t [0]的字符。很容易,除了我不能得到数组的大小,因为它作为参数传递,现在是一个指针,所以我不知道在for循环中放入什么以循环遍历数组。类似的问题建议将大小作为参数传递,但参数列表必须是char s []和char t []。
所以我的问题是如何在不更改参数列表的情况下获取数组的大小?我唯一的另一个想法是首先通过从数组的开头循环找到' \ 0'性格但这看起来既麻烦又不优雅。有没有更简单的方法来实现这个目标?
答案 0 :(得分:3)
有没有更简单的方法来实现这个目标?
没有。您可以使用strlen()
为您执行此操作,但它会在幕后做同样的事情。