[ create a new paste ] login | about

Link: http://codepad.org/mwwmrFOV    [ raw code | output | fork ]

aaronla - C, pasted on Sep 19:
/* this really oughtn't work! */

#include <stdio.h>

char* slen_(char* s)
{
  (&s)[6]-=5*(!!*s);
  (&s)[7]+=!!*s;
  return s;
}
int slen(char* s)
{
  return slen_(s)-s;
}
int main(int argc, char* argv[])
{ 
#define T(x) printf(#x " = %d\n", x)
  T(slen("a"));
  T(slen("hello"));
  T(slen(""));
  return 0;
}


Output:
1
2
3
slen("a") = 1
slen("hello") = 5
slen("") = 0


Create a new paste based on this one


Comments: