Hi I stumpled upon some c-code,
which syntactically is different from what I've seen before.
- first
void strreverse(char* begin, char* end) { char aux; while(end>begin) aux=*end, *end--=*begin, *begin++=aux; }
Would this be the same as
void strreverse(char* begin, char* end) { char aux; while(end>begin){ aux=*end; *end--=*begin; *begin++=aux; }
- second
void itoa(int value, char* str, int base) { static char num[] = "0123456789abcdefghijklmnopqrstuvwxyz"; char* wstr=str; int sign; div_t res; // Validate base if (base<2 || base>35){ *wstr='\0'; return; } // Take care of sign if ((sign=value) < 0) value = -value; // Conversion. Number is reversed. do { res = div(value,base); *wstr++ = num[res.rem]; }while(value=res.quot); if(sign<0) *wstr++='-'; *wstr='\0'; // Reverse string strreverse(str,wstr-1); }
What is happening here especially the res.quot
Thanks in advance