Russian Qt Forum
Ноябрь 23, 2024, 00:54 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Перевернуть строку, не пользуясь дополнительным буфером  (Прочитано 7601 раз)
Astrologer
Гость
« : Ноябрь 05, 2010, 09:59 »

Вопросик от известного основателя Fog Creek.

http://russian.joelonsoftware.com/Articles/Interviewing.html

Код
C++ (Qt)
string str = "abcdefghijkl";
 int i,count;
 int len = str.length()-1;
 for (i=len, count=0; i > count; i--, count++)
 {
     char a = str[i];
     str[i] = str[count];
     str[count] = a;
 }
 
Записан
spectre71
Гость
« Ответ #1 : Ноябрь 05, 2010, 13:48 »

На "C".

Код
C
char* revStr(char *str) {
 if(!str) {return NULL;}
 for(char c, *s=str, *e=str+strlen(str)-1; s<e; ++s,--e) {
   c = *s; *s = *e; *e = c;
 }
 return str;  
}
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.113 секунд. Запросов: 21.