Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2010, 16:55   #11
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Int на char поменять не плохо если массив символов!
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 17.12.2010, 15:33   #12
katena88
Пользователь
 
Аватар для katena88
 
Регистрация: 25.10.2010
Сообщений: 41
По умолчанию

Цитата:
Сообщение от pproger Посмотреть сообщение
2katena88
какая разница, чего массив. тебе надо статический или динамический? если динамический двумерный массив символов, просто замени везде int на char
массив динамический. Int прекрасно работает, а char выдает ошибку :
G:\proba\main.c|33|error: conflicting types for 'masssiv'|
G:\proba\main.c|24|note: previous declaration of 'masssiv' was here|
G:\proba\main.c|35|error: 'massssiv' undeclared (first use in this function)|
G:\proba\main.c|35|error: (Each undeclared identifier is reported only once|
G:\proba\main.c|35|error: for each function it appears in.)|
||=== Build finished: 4 errors, 0 warnings ===|
Руки программиста должны быть прямые, а извилины кривые, но не наоборот
katena88 вне форума Ответить с цитированием
Старый 17.12.2010, 15:40   #13
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2katena88

код давай. компиль тебе говорит, что ты объявляла уже massiv
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 17.12.2010, 15:55   #14
katena88
Пользователь
 
Аватар для katena88
 
Регистрация: 25.10.2010
Сообщений: 41
По умолчанию

Код:
#include <conio.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>

void print(char **mass, int rows, int cols)
{
	int i, j;
	for (i = 0; i < rows; i++) {
		for (j = 0; j < cols; j++) {
			printf("%d ", mass[i][j]);
		}
		printf("\n");
	}
}


int main()
{

int i, j, k = 1;
const int SIZE=10;
int min = 21, max = 254;
char masssiv[SIZE][SIZE];

//заполнение исходного массива
 for ( i = 0; i < SIZE; ++i )
    for ( j = 0; j < SIZE; ++j )
        masssiv[i][j] = rand() % (max - min + 1) + min;

// вывод на экран исходного массива

char **masssiv = (char  **)malloc(SIZE * sizeof(char  *));
	for (i = 0; i < SIZE; i++)
		massssiv[i] = (char *)malloc(SIZE * sizeof(char ));

	for (i = 0; i < SIZE; i++)
		for (j = 0; j < SIZE; j++)
			masssiv[i][j] = k++;

print(masssiv, SIZE, SIZE);

return 0;
getch();
}
а не надо было его объявлять??
Руки программиста должны быть прямые, а извилины кривые, но не наоборот
katena88 вне форума Ответить с цитированием
Старый 17.12.2010, 16:02   #15
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

Код:
#include <conio.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>

void print(char **mass, int rows, int cols)
{
	int i, j;
	for (i = 0; i < rows; i++) {
		for (j = 0; j < cols; j++) {
			printf("%d ", mass[i][j]);
		}
		printf("\n");
	}
}


int main()
{

int i, j, k = 1;
const int SIZE=10;
int min = 21, max = 254;
char masssiv[SIZE][SIZE];

//заполнение исходного массива
 for ( i = 0; i < SIZE; ++i )
    for ( j = 0; j < SIZE; ++j )
        masssiv[i][j] = rand() % (max - min + 1) + min;

// вывод на экран исходного массива

char **masssiv = (char  **)malloc(SIZE * sizeof(char  *));
	for (i = 0; i < SIZE; i++)
		massssiv[i] = (char *)malloc(SIZE * sizeof(char ));

	for (i = 0; i < SIZE; i++)
		for (j = 0; j < SIZE; j++)
			masssiv[i][j] = k++;

print(masssiv, SIZE, SIZE);

return 0;
getch();
}
зачем 2 раза объявили, сначала статический, потом динамический? + еще в третьем маркере много ssss понаставили.

ввод/вывод двумерного динамического массива символов:
Код:
#include <conio.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>

void print(char **mass, int rows, int cols)
{
	int i, j;
	for (i = 0; i < rows; i++) {
		for (j = 0; j < cols; j++) {
			printf("%c ", mass[i][j]);
		}
		printf("\n");
	}
}


int main()
{

	int i, j, k = 128;
	const int SIZE=10;
	int min = 21, max = 254;

	// создали дин массив
	char **masssiv = (char  **)malloc(SIZE * sizeof(char  *));
	for (i = 0; i < SIZE; i++)
		masssiv[i] = (char *)malloc(SIZE * sizeof(char ));

	// заполнили дин массив
	for (i = 0; i < SIZE; i++)
		for (j = 0; j < SIZE; j++)
			masssiv[i][j] = k++;

	// выводим дин массив
	print(masssiv, SIZE, SIZE);

	return 0;
	getch();
}
вы код, что я привел, вручную чтоль перебивали?
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance

Последний раз редактировалось pproger; 17.12.2010 в 16:06.
pproger вне форума Ответить с цитированием
Старый 17.12.2010, 16:07   #16
katena88
Пользователь
 
Аватар для katena88
 
Регистрация: 25.10.2010
Сообщений: 41
По умолчанию

во я блондика!!!!

Код:
char **masssiv = (char  **)malloc(SIZE * sizeof(char  *));
	for (i = 0; i < SIZE; i++)
		masssiv[i] = (char *)malloc(SIZE * sizeof(char ));
а вот это ведь можно функцией оформить?
Руки программиста должны быть прямые, а извилины кривые, но не наоборот

Последний раз редактировалось Stilet; 17.12.2010 в 17:00.
katena88 вне форума Ответить с цитированием
Старый 17.12.2010, 16:14   #17
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2katena88

можно конечно..

Код:
#include <conio.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>

char **create_mass(int rows, int cols)
{
	int i;
	char **ret = (char  **)malloc(rows * sizeof(char  *));
	for (i = 0; i < rows; i++)
		ret[i] = (char *)malloc(cols * sizeof(char ));
	return ret;
}

void fill_mass(char **mass, int rows, int cols)
{
	int i, j, k = 128;
	for (i = 0; i < rows; i++)
		for (j = 0; j < cols; j++)
			mass[i][j] = k++;
}

void print(char **mass, int rows, int cols)
{
	int i, j;
	for (i = 0; i < rows; i++) {
		for (j = 0; j < cols; j++) {
			printf("%c ", mass[i][j]);
		}
		printf("\n");
	}
}

int main()
{
	int rows = 10;
	int cols = 10;
	
	char **pMass = create_mass(rows, cols);
	fill_mass(pMass, rows, cols);
	print(pMass, rows, cols);

	return 0;
}
и не ставьте в конце этот богомерзкий getch. запускайте программу по человечески, не в режиме дебага, если вам отлаживать ее не нужно. если в студии, то ctrl + f5 (а не просто f5)
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 17.12.2010, 16:17   #18
Гром
Старожил
 
Аватар для Гром
 
Регистрация: 21.03.2009
Сообщений: 2,193
По умолчанию

Код:
char** NewArray(int SIZE)
{
char **masssiv = (char  **)malloc(SIZE * sizeof(char  *));
	for (i = 0; i < SIZE; i++)
		masssiv[i] = (char *)malloc(SIZE * sizeof(char ));
return masssiv;
}
P.S. Не успел.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта
Тема на форуме, посвященная ему же
Гром вне форума Ответить с цитированием
Старый 17.12.2010, 16:34   #19
katena88
Пользователь
 
Аватар для katena88
 
Регистрация: 25.10.2010
Сообщений: 41
По умолчанию

спасибо огромное))) хорошо, что есть такие люди как Вы)))
сама бы ни за что не разобралась))

сейчас покажусь полной дурой, но все равно спрашу (задача то не работает):а одномерный массив как сделать динамическим?
Руки программиста должны быть прямые, а извилины кривые, но не наоборот

Последний раз редактировалось Stilet; 17.12.2010 в 17:01.
katena88 вне форума Ответить с цитированием
Старый 17.12.2010, 17:02   #20
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А вот так:http://www.programmersforum.ru/showthread.php?t=56881
Первый пост
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
создание функции katena88 Общие вопросы C/C++ 3 03.11.2010 17:06
Создание функции Blu2th Помощь студентам 3 01.04.2010 14:49
Создание функции Telec Помощь студентам 4 15.01.2010 08:17
Создание функции zotox Помощь студентам 1 16.07.2009 18:19
создание функции поиска Алёна Microsoft Office Excel 4 15.04.2009 11:26