crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V  < 1 2  
Ответить в данную темуНачать новую тему
> длинна строки символов в char*, интересная загадка
Алексей1153
  опции профиля:
сообщение 3.10.2011, 11:58
Сообщение #11


фрилансер
******

Группа: Участник
Сообщений: 2946
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


ага, я по ходу дела тоже условие не так понял ))

с длиной всё проще :

strlen(argv[0])

или std::string(argv[0]).size()
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
enslaver
  опции профиля:
сообщение 3.10.2011, 13:58
Сообщение #12


Студент
*

Группа: Участник
Сообщений: 30
Регистрация: 25.3.2010
Пользователь №: 1565

Спасибо сказали: 0 раз(а)




Репутация:   0  


Спасибо!
Я сам сначала решил эту проблему через встроенный класс string, но сейчас переписал функцию на цикл.

int sizePtrchar(char *ch){
    int i;
    for(i=0;ch[i]!='\0';i++){}
    return i;
}


вопрос поднял так как изначально искал решение в интернете и столкнулся с тем чт она многих форумах не смоли дать решение данному вопросу, вот решил спросить у вас.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 3.10.2011, 14:07
Сообщение #13


фрилансер
******

Группа: Участник
Сообщений: 2946
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


цикл - это наихудший вариант из представленных. Он будет работать, но будет самым медленным
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
enslaver
  опции профиля:
сообщение 5.10.2011, 20:35
Сообщение #14


Студент
*

Группа: Участник
Сообщений: 30
Регистрация: 25.3.2010
Пользователь №: 1565

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(Алексей1153 @ 3.10.2011, 15:07) Link
цикл - это наихудший вариант из представленных. Он будет работать, но будет самым медленным

то есть вы утверждаете что в STD в том же самом string узнавание размера организованно каким то другим способом?

Цитата(enslaver @ 5.10.2011, 21:34) Link
Цитата(Алексей1153 @ 3.10.2011, 15:07) Link
цикл - это наихудший вариант из представленных. Он будет работать, но будет самым медленным

то есть вы утверждаете что в STD в том же самом string узнавание размера организованно каким то другим способом?


единственное что я могу предположить дак это поиск по методу половинного деления.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 6.10.2011, 0:41
Сообщение #15


фрилансер
******

Группа: Участник
Сообщений: 2946
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


enslaver, предлагаю провести тест - 10000 раз выполнить операцию каждым способом и сравнить время. Отдельно можно попробовать и для релиза и для дебага.

string, кстати говоря, хранит длину строки в переменной. Но первый раз длина должна считаться, конечно )
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V  < 1 2
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 22.12.2025, 7:18