Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
FireNovel
150 / 73 / 27
Регистрация: 09.04.2010
Сообщений: 297
#1

Сравнивание указателей

20.07.2010, 14:32. Просмотров 406. Ответов 2
Метки нет (Все метки)

Нужно подсчитать количество символов до определенной позиции, включительно, указатель на которую - begin_symbol начало подсчета с позиции file_txt_ptr
Можно сделать так?
C++
1
2
3
indx = 1;  // 0 или 1
while ( (file_txt_ptr - indx )  !=  (begin_symbol - 1) )
     ++indx;
В смысле корректно ли с равнивать с ячейкой памяти, стоящей перед первым символом массива(т.е. begin_symbol - 1)?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.07.2010, 14:32
Ответы с готовыми решениями:

Почему в сортировке указателей на объекты в вызове функции используются адреса объектов, а не указателей?
Доброго времени суток! Рассматриваю пример (из Лафоре) сортировки массива...

Создать специфицированный шаблон функции, принимающей массив указателей на char и количество самих указателей
Задача: создать специфицированный шаблон функции, принимающей массив указателей...

Объяснить различия в работе указателей на целое число и указателей на const char (строки в стиле Си)
Уважаемые программисты, возникло несколько вопросов касательно указателей. ...

Создать специализацию для шаблона, которая принимает массив указателей на строки и количество этих указателей
Нужно создать специализацию для шаблона, которая принимает массив указателей на...

Различия указателей char* от указателей других типов
Помогите пожалуйста разобраться! Прочитал раздел про указатели и даже вроде...

2
easybudda
Модератор
Эксперт CЭксперт С++
10054 / 5974 / 1493
Регистрация: 25.07.2009
Сообщений: 11,321
20.07.2010, 14:44 #2
Цитата Сообщение от FireNovel Посмотреть сообщение
В смысле корректно ли с равнивать с ячейкой памяти, стоящей перед первым символом массива(т.е. begin_symbol - 1)?
как-то правильнее всё-таки
C
1
size_t count = lastPtr - firstPtr + 1;
вот к примеру возможная реализация strlen()
C
1
2
3
4
5
6
size_t strlen(const char * s){
    const char * p = s;
    while ( *p )
        ++p;
    return p - s;
}
после выхода из цикла while указатель p указывает на '\0', то есть на позицию за последним символом в строке.
1
FireNovel
150 / 73 / 27
Регистрация: 09.04.2010
Сообщений: 297
20.07.2010, 14:50  [ТС] #3
Спасибо!!! Решение мне очень подошло
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.07.2010, 14:50

Как обойтись без указателей и указателей на указатель?
Ибо не совсем выходит понять,что на что тут указывает #include "stdafx.h"...

Создание массивов указателей на массивы указателей
Помогите в решении задачи: создал массив указателей на массивы указателей на...

Сравнивание строк
Всем привет. В программу у меня вводится слово, заранее длинна слова не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru