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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
marabunta
0 / 0 / 0
Регистрация: 26.05.2014
Сообщений: 1
#1

не работает strncmp - нет доступа к памяти - C++

27.05.2014, 00:09. Просмотров 221. Ответов 1
Метки нет (Все метки)

после того, как принимается первое значение symbol выбрасывается ошибка
Unhandled exception at 0x5c6cf7e0 in lala 3 1.exe: 0xC0000005: Access violation reading location 0x011da000.
почему нет доступа к памяти? и как исправить сложившуюся ситуацию?
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
int _tmain(int argc, _TCHAR* argv[])
{cout«"Please, enter your text here\n";
char* text=NULL;
text=(char*)malloc(sizeof(char)*100);
cin»text;
cout«"\nWell done!\n"«"And now enter symbols you want to be found\n";
char* symbol=NULL;
symbol=(char*)malloc(sizeof(char)*4);
for(int i=0;i<4;i++)
{
cout«"The "«i+1«" symbol"«endl;
cin»symbol;
cout«endl;
int result=0;
while(text!=NULL)
{if (strncmp(++text,symbol,1))result++;}
cout«"Matches detected: "«result«endl;
}
text=NULL;
symbol=NULL;
system("pause");
 
return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.05.2014, 00:09     не работает strncmp - нет доступа к памяти
Посмотрите здесь:

Нет доступа к ячейке памяти?! - C++
День всем добрый. Я понимаю, неприлично как-то по пять раз на день форумчан беспокоить, но тут исключительный случай! Короче,...

Почему код не работает хотя ошибок нет? Что-то не так с выделением памяти? - C++
#include &lt;math.h&gt; #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;iostream&gt; using namespace std; int n = 0; double a, b; ...

Функция strncmp - C++
int main() { setlocale(LC_ALL,&quot;Rus&quot;); char droids = { &quot;R2D2&quot; , &quot;C3PO&quot; , &quot;R2A6&quot; }; // имеющиеся дроиды ...

Оптимизация доступа к памяти - C++
Интересует вопрос. При умножении матриц даст ли результат такая замена или компилятор видит что в цыкле адрес ячейки тот же и сам...

Сравнение строк с использованием функции strncmp - C++
Напишите программу , которая использует функцию strncmp для сравнения двух строк , введенных пользователем . Программа должна вводить...

Синхронизация доступа к разделяемой памяти - C++
Когда потоки являются дочерними по отношению к процессу тут все просто - объект мьютекса находится в общей памяти и используя этот объект...

Аналог strncpy и strncmp для типа string - C++
Подскажите, как проводить операции сравнения и копировании с двумя строками типа string, при чём только над определённым количеством...

Нет доступа к функции - C++
Есть 2 заголовочных файла .h и главный .cpp. В Employee.h есть функция, которую нельзя вызвать - error C2247: нет доступа к...

Нет доступа к файлу - C++
Всем здравствуйте. Вот какая проблема: имеется txt файл, в нем записан 0. После выполнения программы к 0 прибавляется (должна...

Напишите варианты библиотечных функций strncpy, strncat и strncmp - C++
вот такая задача, Напишите варианты библиотечных функций strncpy, strncat и strncmp, которые оперируют с первыми символами своих...

Ошибка доступа к памяти при выходе из программы - C++
Подскажите почему после завершения работы выдаётся ошибка, что идёт запись данных в память? вроде всё очистил #include &lt;iostream&gt; ...

Линейный список прямого доступа в связанной памяти - C++
Здравствуйте!Помогите пожалуйста. Не могу понять как сделать чтобы все заданные элементы не удалялись. Задание: Удалить последний по...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Max Dark
шКодер самоучка
1813 / 1614 / 588
Регистрация: 09.10.2013
Сообщений: 3,617
Записей в блоге: 6
Завершенные тесты: 2
27.05.2014, 01:06     не работает strncmp - нет доступа к памяти #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Для начала перечитываем инфу про указатели
Потом еще раз перечитываем
затем правим
строки 15-16
C
1
2
while(*text!='\0')
{if (strncmp(text,symbol,1))result++; ++text;}
19-20
C
1
2
free(text);
free(symbol);
Ответ Создать тему
Опции темы

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