@kiramys1

Вызвано исключение: нарушение доступа для записи. **_Str** было 0x1110112. Что не так?

Есть main
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include "LR6.h"
#include <string>
using namespace std;
int main()
{
	char* s1 = NULL;
	cin >> s1;
	str_len(s1);
	return 0;
}
и заголовочный файл LR6.h

#include <iostream>
using namespace std;
int str_len(char* s) {
	int length = sizeof(s);
	return length;
}

при запуске программы и попытке в main ввести любое значение в s1, заканчивается ошибкой
Вызвано исключение: нарушение доступа для записи. **_Str** было 0x1110112.
где ошибка?
  • Вопрос задан
  • 2322 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Не выделена память для строки.
P.S. И sizeof - это не длина строки.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
CTRL+ Москва
от 250 000 до 320 000 ₽
CTRL+ Москва
от 200 000 до 300 000 ₽
CTRL+ Белград
от 250 000 до 320 000 ₽
22 нояб. 2024, в 00:55
500 руб./за проект
21 нояб. 2024, в 23:30
300000 руб./за проект
21 нояб. 2024, в 22:21
3000 руб./в час