Eliminare il goto non dovrebbe portare particolari problemi:Originariamente inviato da Fabiuz
non cè un implementazione più semplice (adatta a studente universitario che non può usare goto e non sa tutte le
librerie del C ?
Eliminare le funzioni di libreria senza complicare in modo notevole il codice o riscriversele dubito sia fattibile...codice:#include <sys/types.h> #include <string.h> char *strstr(const char *haystack, const char *needle) { size_t nl=strlen(needle); size_t hl=strlen(haystack); int i; if (!nl) return (char*)haystack; if (nl>hl) return 0; for (i=hl-nl+1; __likely(i); --i) { if (*haystack==*needle && !memcmp(haystack,needle,nl)) return (char*)haystack; ++haystack; } return 0; }
Rimane quel __likely che non avevo notato, credo sia roba interna di dietlibc


Rispondi quotando