уважаемые гуру,
помогите решить задачку в subj.
На Преле это делалось так:
perl -e '$a = "1234567890"; $a =~ s/(.)(.)/$2$1/g; print "$a\n"'
char numb[]="1234567890"
char *tmp;tmp = bumb;
for(;*tmp!='\0';*tmp++)
fprintf(stdout,"%d%d",int (*tmp--);int (*tmp++));
непроверял , но думаю что работать будет
>char numb[]="1234567890"
>char *tmp;
>
>tmp = bumb;
>
> for(;*tmp!='\0';*tmp++)
> fprintf(stdout,"%d%d",int (*tmp--);int (*tmp++));
>
>
>
>
>непроверял , но думаю что работать будет
пфу блин,
fprintf(stdout,"%с%с", (*tmp--); (*tmp++));
Не, думаю, что это не пойдет.
Строка может состоять из любого набора цифр и букв. 1234567890 - это просто пример был.
это был наглядный алгоритм, хоть любой набор букав из RFC rus-001(Букварь)на
############
############
cat invrs.c:#include <stdio.h>
void usage(char *pname)
{
fprintf(stdout,"Usage: %s string\nExample: %s 1234567890\n", pname, pname);
exit(1);
}int main(int ac, char **av)
{
char *params, *tmp;
int i;if(ac<2)
usage(av[0]);for (i=1; i<ac;i++)
{
tmp = '\0';
tmp = params = strdup(av[i]);
fprintf(stdout, "\n%s -> ", av[i]);
while(*tmp!='\0')
{
fprintf(stdout, "%c%c",*tmp, *tmp++);
*tmp++;
}
}fprintf(stdout, "\n\n");
return 0;
}
#############
#############
cat Makefile:invrs:
gcc -O2 -g invrs.c -o invrs
запускай так:
./invrs lOge alemr
Только тебе нужно каждую вторую ? или все инвертировать ? :))))
сегодня можно неблагодарить
>уважаемые гуру,
>помогите решить задачку в subj.
>На Преле это делалось так:
>perl -e '$a = "1234567890"; $a =~ s/(.)(.)/$2$1/g; print "$a\n"'Perl'овые regexp'ы в PHP тоже работают. Правда, не так элегантно:
$a = "1234567890";
$a = preg_replace('/(.)(.)/', "\\2\\1", $a);
print "$a\n";
Спасибо!
То, что нужно. Работает!
>Perl'овые regexp'ы в PHP тоже работают. Правда, не так элегантно:
>
>$a = "1234567890";
>$a = preg_replace('/(.)(.)/', "\\2\\1", $a);
>print "$a\n";