On Mon, Jun 16, 2008 at 09:48:07PM +0200, Tito wrote:
>On Monday 16 June 2008 09:47:31 Bernhard Fischer wrote:
>> On Mon, Jun 16, 2008 at 08:45:18AM +0200, Tito wrote:
>> >On Monday 16 June 2008 06:33:35 you wrote:

>> >> char* strrstr(const char *haystack, const char *needle)
>> >> {
>> >>         char *r = NULL;
>> >> 
>> >>         if (!needle[0])
>> >>                 return r;
>> >>         while (1) {
>> >>                 char *p = strstr(haystack, needle);
>> >>                 if (!p)
>> >>                         return r;
>> >>                 r = p;
>> >>                 haystack = p + 1;

>Hi, just for fun, 
>one more variant that seems to pass the tests as modified (for "")
>
>char* strrstr(const char *haystack, const char *needle)
>{
>       char *s = NULL;
>
>       while (*haystack) {
>               s = (strstr(haystack++, needle)) ? : s;
>       }
>       return s;
>}
>
>but size on my system is the same as Denys' version....  :(
>
>scripts/bloat-o-meter busybox_old busybox_unstripped
>function                                             old     new   delta
>strrstr                                               53      42     -11
>------------------------------------------------------------------------------
>(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-11)             Total: -11 bytes

Tito, can you pick one (your decision) and send me the full file
(including your nice testcases)?
TIA and cheers,
_______________________________________________
busybox mailing list
busybox@busybox.net
http://busybox.net/cgi-bin/mailman/listinfo/busybox

Reply via email to