![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 13.10.2012
Сообщений: 12
|
![]()
Добрый день!
Подскажите пожалуйста, как создать массив из N строк, введенных с клавиатуры? (язык си, не си++) Насколько я понимаю, нужно создать массив из N указателей на char. Т.е. Код:
Вот так не получается: Код:
|
![]() |
![]() |
![]() |
#2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Нужен массив массивов
Код:
Код:
I'm learning to live...
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 13.10.2012
Сообщений: 12
|
![]()
Stilet
Спасибо большое! ![]() А вы не подскажете, как точно обосновать, почему не нужно ставить амперсанд в scanf("%s", array[i])? Последний раз редактировалось Chuckle; 11.11.2012 в 13:49. |
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,830
|
![]()
потому что array[i] уже указатель, не?
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 15.11.2008
Сообщений: 577
|
![]()
ну суть в том что scanf нужно адрес (указатель) а array есть такой указатель
ну то есть Код:
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 13.10.2012
Сообщений: 12
|
![]()
p51x, rUs_LAN
Спасибо, теперь я понял. Не подскажите пожалуйста в такой ситуации: Хочу создать массив из n строк. Но почему-то, когда я ввожу строки, этот фрагмент программы "считает", что я ввел очередную строку, когда в потоке ввода встретился пробел. Например: n == 2 (две строки) Я ввожу: слово1 слово2 слово 3 *enter* (ввод прекратился) И если распечатать массив строк, получим: слово1 слово2 Нужно, чтобы работало так: Например n == 2 (две строки) Я ввожу: слово1 слово2 слово3 *enter* слово4 слово5 *enter* Массив строк должен иметь вид: слово1 слово2 слово3 слово4 слово5 *enter* - то, что я нажимаю на клавиатуре Код:
|
![]() |
![]() |
![]() |
#7 | |||
Старожил
Регистрация: 15.02.2010
Сообщений: 15,830
|
![]() Цитата:
Цитата:
Цитата:
Последний раз редактировалось p51x; 11.11.2012 в 14:57. |
|||
![]() |
![]() |
![]() |
#8 | |
Пользователь
Регистрация: 13.10.2012
Сообщений: 12
|
![]()
Каюсь, не читал.
Цитата:
Вот, погуглил, вроде бы fgets() используется так, как в коде. Но всё равно ничего не получается. Ввожу n = 2, считывает одну строку только... Код:
|
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 13.10.2012
Сообщений: 12
|
![]()
Кажется я понял, нужно убрать при выводе строки \n
|
![]() |
![]() |
![]() |
#10 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
Да, или при вводе строки убирать
![]()
I'm learning to live...
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перемножение двух введенных с клавиатуры квадратных матриц 4 порядка | Alex Miheev | Microsoft Office Excel | 3 | 16.04.2012 19:34 |
создать массив строк | ИВэТэшка | Общие вопросы C/C++ | 3 | 04.12.2011 22:19 |
Чтение данных типа double введенных с клавиатуры | Vinnipux | Общие вопросы по Java, Java SE, Kotlin | 1 | 16.11.2010 08:22 |
Присвоить переменной A максимальное значение из введенных с клавиатуры чисел (X,Y,Z,B) | Dj-RD | Помощь студентам | 8 | 14.03.2010 08:32 |
Как создать массив заполняемый с клавиатуры? | Bravo | Общие вопросы C/C++ | 2 | 14.11.2008 00:23 |