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

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

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

Как заставить sscanf работать с динамическими массивами? - C++

23.10.2013, 16:25. Просмотров 353. Ответов 5
Метки нет (Все метки)

Как заставить sscanf работать с динамическими массивами или есть этому альтернатива(кроме strtok)?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.10.2013, 16:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как заставить sscanf работать с динамическими массивами? (C++):

работа с динамическими массивами - C++
Всё что нужно, это рассчитать размерность массива через функцию, но в main я получаю, а если передаю массив в функцию то получаю 1, как...

Работа с динамическими массивами - C++
Здравствуйте. Помогите, пожалуйста, написать программу 1. Использующую потоки cout и cin для ввода/вывода. Программа должна использовать...

Работа с динамическими массивами - C++
Добрый день! Написал программу на си, которая рисует окружность в псевдографике: // Clocks.cpp : Defines the entry point for the...

Работа с динамическими массивами - C++
Ошибка чтения данных возникает при работе с динамическими массивами: int *mask= new int ; long double **A= new long ...

программка с динамическими массивами - C++
1. Ввести размер массива; 2.Сформировать массив с помощью операции new или библиотечных функций malloc (calloc); 3.Заполнить массив...

Странности с динамическими массивами. - C++
Добрый день! В общем как то при выполнении одной лабы, я столкнулся с одной непостижимой моему уму проблемой. Я написал программку...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Raali
623 / 327 / 34
Регистрация: 06.07.2013
Сообщений: 1,056
Завершенные тесты: 1
23.10.2013, 16:57 #2
а что его заставлять он и так работает
weightless
0 / 0 / 0
Регистрация: 12.02.2013
Сообщений: 103
23.10.2013, 17:15  [ТС] #3
access violation .... &(tourist->places.n) , где n - char [20], а вот если создать динамический то вылетает ошибка. в хелпе указаны примеры sscanf только со статикой
Raali
623 / 327 / 34
Регистрация: 06.07.2013
Сообщений: 1,056
Завершенные тесты: 1
23.10.2013, 17:26 #4
дак почему стоит амперсанд если n- это char[20]
C++
1
sscanf(tourist->places.n,.....)(
weightless
0 / 0 / 0
Регистрация: 12.02.2013
Сообщений: 103
23.10.2013, 17:37  [ТС] #5
Потому что функции нужен адрес, это работает правильно. Нужен способ работать с динамическими массивами типа string или char*

C++
1
2
char *buf;
sscanf(buf, "%s",&(tourist->places.n))
alsav22
5417 / 4813 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
23.10.2013, 18:27 #6
Цитата Сообщение от weightless Посмотреть сообщение
Потому что функции нужен адрес
Указатель на динамический массив и есть адрес, поэтому не нужно брать адрес у адреса.

Добавлено через 2 минуты
Для статического массива тоже не нужно адрес брать(имя преобразуется в адрес начала). Так разве не работает?
C++
1
sscanf(buf, "%s",tourist->places.n)
Добавлено через 6 минут
C++
1
2
3
char *n = (char*)malloc(20);
char buf[20] = "asdf";
sscanf(buf, "%s", n);
C++
1
2
3
char n[20];
char buf[20] = "asdf";
sscanf(buf, "%s", n);
Добавлено через 18 минут
Цитата Сообщение от weightless Посмотреть сообщение
char *buf;
sscanf(buf, "%s",&(tourist->places.n))
Надеюсь память под buf выделена и там что-то есть?

C++
1
2
3
4
    char *n = (char*)malloc(20);
    char *buf = (char*)malloc(20);
    strcpy(buf, "asdf");
    sscanf(buf, "%s", n);
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2013, 18:27
Привет! Вот еще темы с ответами:

Работа с динамическими массивами - C++
Помогите пожалуйста с программой,это должна быть одна программа.. 1)Как написать процедуру для заполнение двумерного массива случайными...

Метод с динамическими массивами объектов - C++
Здравствуйте! Было необходимо создать метод класса TableFunc2D::setConvolution(TableFunc2D f, TableFunc2D g), берущий два динамических...

не получается написать динамическими массивами - C++
Помогите пожалуйста #include <iostream> #include <stdlib.h> #include <time.h> #include <math.h> using namespace std; void...

О работе с динамическими двумерными (многомерными) массивами - C++
Всех с наступающим профессиональным праздником, многоуважаемые гуру С++! задачка простая - работа с данными в двумерном динамическом...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
23.10.2013, 18:27
Ответ Создать тему
Опции темы

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