stock findindex(const str1[], const character[]){ newvalue = -1,len,karakter[1];len = strlen(str1); for(new c; c < len; c++) {strmid(karakter, str1, c, c+1); if(!strcmp(karakter, character)) { value = c; break; } } return value;}
main(){print(\"findindex(\'asd\', \'s\')\");findindex(\"asd\", \"s\");print(\"findindex(\'vakáció\', \'s\')\");findindex(\"vakáció\", \"s\");print(\"findindex(\'kecske\', \'e\')\");findindex(\"kecske\", \"e\");print(\"findindex(\'kettõ kecske\', \'e\')\");findindex(\"kettõ kecske\", \"e\");print(\"findindex(\'magas\', \'s\')\");findindex(\"magas\", \"s\");}
[22:45:31] findindex(\'asd\', \'s\')[22:45:31] asd szóban a s karakter indexe: 1[22:45:31] findindex(\'vakáció\', \'s\')[22:45:31] Nincs index találat a vakáció szóban a s karakterre![22:45:31] findindex(\'kecske\', \'e\')[22:45:31] kecske szóban a e karakter indexe: 1[22:45:31] findindex(\'kettõ kecske\', \'e\')[22:45:31] kettõ kecske szóban a e karakter indexe: 1[22:45:31] findindex(\'magas\', \'s\')[22:45:31] magas szóban a s karakter indexe: 4
printf(\"%d\", strfind(\"asd\", \"s\"));printf(\"%d\", strfind(\"vakáció\", \"s\"));printf(\"%d\", strfind(\"kecske\", \"e\"));printf(\"%d\", strfind(\"kettõ kecske\", \"e\"));printf(\"%d\", strfind(\"magas\", \"s\"));
[23:08:57] 1[23:08:57] -1[23:08:57] 1[23:08:57] 1[23:08:57] 4
Futtasd le: printf(\"%d\", strfind(\"asd\", \"s\"));printf(\"%d\", strfind(\"vakáció\", \"s\"));printf(\"%d\", strfind(\"kecske\", \"e\"));printf(\"%d\", strfind(\"kettõ kecske\", \"e\"));printf(\"%d\", strfind(\"magas\", \"s\")); Eredmények: [23:08:57] 1[23:08:57] -1[23:08:57] 1[23:08:57] 1[23:08:57] 4
Futtasd le: printf(\"%d\", strfind(\"asd\", \"s\"));printf(\"%d\", strfind(\"vakáció\", \"s\"));printf(\"%d\", strfind(\"kecske\", \"e\"));printf(\"%d\", strfind(\"kettõ kecske\", \"e\"));printf(\"%d\", strfind(\"magas\", \"s\")); Eredmények: [23:08:57] 1[23:08:57] -1[23:08:57] 1[23:08:57] 1[23:08:57] 4 igen, és?milyen értéket kapjon, ha ne -1 et, mikor nincs találat?: D:D:D:D [/quote]Na most már lehet, hogy nem vetted észre, de az én kódomban nem findindex szerepel.
stockfindcharacter(const string[], const sub[]){newch = -1;while(string[++ch] && string[ch] != sub[0]) {}return (string[ch])?(ch)-1);}
printf(\"%d\", findcharacter(\"asd\", \"s\"));printf(\"%d\", findcharacter(\"vakáció\", \"s\"));printf(\"%d\", findcharacter(\"kecske\", \"e\"));printf(\"%d\", findcharacter(\"kettõ kecske\", \"e\"));printf(\"%d\", findcharacter(\"magas\", \"s\"));[/quote]Edit:Javítva egy apró hiba.
A kód neve lehetne findcharacter is talán.Na mindegy írtam egy változatot én is: stockfindcharacter(const string[], const sub[]){newch;while(string[++ch] && string[ch] != sub[0]) {}return (string[ch])?(ch)-1);} printf(\"%d\", findcharacter(\"asd\", \"s\"));printf(\"%d\", findcharacter(\"vakáció\", \"s\"));printf(\"%d\", findcharacter(\"kecske\", \"e\"));printf(\"%d\", findcharacter(\"kettõ kecske\", \"e\"));printf(\"%d\", findcharacter(\"magas\", \"s\")); [/quote]Hármas operátornál gyorsabb az if-else, bár akkor már 1 sorral hosszabb a kód
stockfindcharacter(const string[], const sub[]){newch;while(string[++ch] && string[ch] != sub[0]) {}return (string[ch])?(ch)-1);}
printf(\"%d\", findcharacter(\"asd\", \"s\"));printf(\"%d\", findcharacter(\"vakáció\", \"s\"));printf(\"%d\", findcharacter(\"kecske\", \"e\"));printf(\"%d\", findcharacter(\"kettõ kecske\", \"e\"));printf(\"%d\", findcharacter(\"magas\", \"s\"));