Форум программистов, компьютерный форум CyberForum.ru

Ошибка в функции strrchr - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Проверка порядка чисел в матрице http://www.cyberforum.ru/cpp-beginners/thread317552.html
Здравствуйте. Мучает такой вопрос: есть матрица 4 на 4, пользователь заполняет матрицу сам - заполняет числами от 1 до 16 ( строго в такой последовательности нужно). Программа расставляет эти числа в матрице соответственно. Мне нужна проверка того, правильно ли ввел числа пользователь. Т.е. вдруг он ввел числа не по порядку, а наоборот - 16,15,14... или вообще не те числа ( к примеру 24 27....75...
C++ Вычислить значение функции 2 Вычислить значение функции при заданных значениях параметров Заранее спасибо... http://www.cyberforum.ru/cpp-beginners/thread317550.html
Вопрос по исключениям в шаблонах классов C++
Кто подскажет как реализовать исключения в следующей задаче: Создать шаблонный класс, в котором создать одномерный массив и найти сумму элементов от n до m. Не могу понять как это сделать, кто может подсказать - буду благодарен, заранее СПАСИБО.
C++ Прошу помочь с программой составления заявок
Здравствуйте! Пожалуй начну о моей проблеме с начала. Работаю в крупной организации, занимаюсь снабжением производства ТМЦ и организацией ремонта изделий. Посредственно знаю PHP на уровне быдлокодера, абсолютно не знаком с ООП. Гуманитарное образование. По мере работы столкнулся с большой сложностью составления заявок на покупку, ремонт, запрос. Каждая заявка составляется в Word и...
C++ Ошибка в класе вектор http://www.cyberforum.ru/cpp-beginners/thread317523.html
У меня есть Класс вектор и в нем видает 3 ошибки error C2065: x: необъявленный идентификатор error C2065: y: необъявленный идентификатор error C2065: z: необъявленный идентификатор В перегрузке оператора произведение double operator*(vector a) { return a.x*x + a.y*y + a.z*z; }
C++ Даны два массива из указателей на строки Пожалуйста помогите!! Даны два массива из указателей на строки, последний элемент каждого массива равен NULL. Разработать функцию, получающую эти массивы и выводящую все строки, встречающиеся в обоих массивах и количество таких строк. Не хорошо влезать в чужие темы со своими задачами. Надо уважать других участников форума. подробнее

Показать сообщение отдельно
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
11.06.2011, 05:37     Ошибка в функции strrchr
C
1
strrchr(str, c);
передача аргументов в strrchr()

C++
1
2
3
4
                int *l;
                char c = ' ';
                 *l = strrchr(str[i], c);
        if (!l) //Если не пробел
разные ошибки
не знаешь, что такое указатель

C++
1
for (int i=0; i <= strlen(str); i++)
выход за край строки (зачем-то рассматривается нуль-символ наравне с другими)
да и strlen() каждый раз вызывается, когда можно сделать s[i] != '\0'

C++
1
*l = char strrchr(stroka, c);
не знаешь, что такое возвращаемое значение функции, чем вызов отличается от прототипа

Добавлено через 10 минут
Цитата Сообщение от pito211
C++
1
const char * strrchr ( const char * str, int character );
для C const у функции- неопределённое поведение

C89(draft). 3.5.3 Type qualifiers
If the specification of an array type includes any type qualifiers,
the element type is so-qualified, not the array type. If the
specification of a function type includes any type qualifiers, the
behavior is undefined./59/
для C++, вроде, ошибки нет (g++ -pedantic -Wall компилирует без сообщений)
хотя и сишный код так же компилируется без сообщений при gcc -ansi -pedantic -Wall

C89(draft)
C
1
char *strchr(const char *s, int c);
C
1
char *strrchr(const char *s, int c);
видишь, принимает const char *, а возвращает char *
 
Текущее время: 16:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru