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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.05.2010, 14:25   #1
Chica Bond
Пользователь
 
Регистрация: 15.03.2010
Сообщений: 31
По умолчанию ошибк в функции в параметрах....

помогите пожалуйста исправить ошибки в функции:
Код:
int time (int fl, char *str)
{
		char* num20table[ 20 ] =
{
"nol",
"odin",
"dva",
"tri",
"chetyre",
"piat",
"shest",
"sem",
"vosem",
"deviat",
"desiat",
"odinnadtsat",
"dvenadtsat",
"trinadtsat",
"chetyrnadtsat",
"piatnadtsat",
"shestnadtsat",
"semnadtsat",
"vosemnadtsat",
"deviatnadtsat"
};

	char* num100table[ 6 ] =
{
"nol",
"desiat",
"dvadtsat",
"tridtsat",
"sorok",
"piatdesat",
};
	char mas[]=" .,:;";
char *sl=new char [30];
	int g=0;
for(int j=(fl+1); str[j]!='\0'; j++)
	if (strchr(mas,str[j])==NULL) 
					{
					sl[g]=str[j]; g++;
					}
		else 
			{
				fl=j;
				int num=atoi(sl); g=0; 
					if (num<20) 
								{
								  printf ("%s minyt(a) ", num20table[num]);break;
								}
						else
							{
							int a=num%10; int b=num/10; 
							if (a==0) {printf ("%s minut(a) ", num100table[b]);break;}
							else {printf ("%s%s minut(a) ", num100table[b], num20table[a]);break;}
							} 
	}
	if (str[fl]==':')
	for(int h=(fl+1); str[h]!='\0'; h++)
		if (strchr(mas,str[h])==NULL) 
					{
					sl[g]=str[h]; g++;
					}
		else 
			{
				fl=h;
				int num=atoi(sl); g=0; 
					if (num<20) 
								{
								  printf ("%s sekynd(a) ", num20table[num]);break;
								}
						else
							{
							int a=num%10; int b=num/10; 
							if (a==0) {printf ("%s sekynd(a) ", num100table[b]);break;}
							else {printf ("%s%s sekynd(a) ", num100table[b], num20table[a]);break;}
							} 
			}
else {printf ("%c",  str[fl]); g=0;}
	}
	return fl;
}
ошибки:
Error 3 error C2065: 'fl' : undeclared identifier c:\documents and settings\1\рабочий стол\dudka\rgr.cpp 212
Error 2 error C2601: 'time' : local function definitions are illegal c:\documents and settings\1\рабочий стол\dudka\rgr.cpp 132
Заранее спасибо!!
Chica Bond вне форума Ответить с цитированием
Старый 02.05.2010, 15:07   #2
ozo
Форумчанин
 
Аватар для ozo
 
Регистрация: 26.04.2010
Сообщений: 328
По умолчанию ;)

_Минимальный_ по размеру, возможный к запуску, но почему-то не запускающийся код покажите, пожалуйста.

И желательно отформатированный нормальненько. Ибо мой emacs думает, что вы где-то забыли {.
Используй гугль, будь счастлив
hackme@yandex.ru
Блог об archlinux

Последний раз редактировалось ozo; 02.05.2010 в 15:14.
ozo вне форума Ответить с цитированием
Старый 02.05.2010, 15:28   #3
Chica Bond
Пользователь
 
Регистрация: 15.03.2010
Сообщений: 31
По умолчанию

Цитата:
Сообщение от ozo Посмотреть сообщение
_Минимальный_ по размеру, возможный к запуску, но почему-то не запускающийся код покажите, пожалуйста.

И желательно отформатированный нормальненько. Ибо мой emacs думает, что вы где-то забыли {.
эм... немного не поняла просьбу... показать код, в котором идёт вызов функции???
Chica Bond вне форума Ответить с цитированием
Старый 02.05.2010, 16:02   #4
ozo
Форумчанин
 
Аватар для ozo
 
Регистрация: 26.04.2010
Сообщений: 328
По умолчанию

вырежьте из вашего кода всё лишнее на сколько это возможно, но он должен по вашему мнению компилироваться и запускаться, но почему-то не компилируется.
Используй гугль, будь счастлив
hackme@yandex.ru
Блог об archlinux
ozo вне форума Ответить с цитированием
Старый 02.05.2010, 16:09   #5
Chica Bond
Пользователь
 
Регистрация: 15.03.2010
Сообщений: 31
По умолчанию

врядли я смогу что-то вырезать чтобы после этого код был рабочим....
но могу сказать вот что, когда код был таким, он работал.
Код:
int time (int fl, char *str)
{
		char* num20table[ 20 ] =
{
"nol",
"odin",
"dva",
"tri",
"chetyre",
"piat",
"shest",
"sem",
"vosem",
"deviat",
"desiat",
"odinnadtsat",
"dvenadtsat",
"trinadtsat",
"chetyrnadtsat",
"piatnadtsat",
"shestnadtsat",
"semnadtsat",
"vosemnadtsat",
"deviatnadtsat"
};

	char* num100table[ 6 ] =
{
"nol",
"desiat",
"dvadtsat",
"tridtsat",
"sorok",
"piatdesat",
};
	char mas[]=" .,:;";
char *sl=new char [30];
	int g=0;
for(int j=(fl+1); str[j]!='\0'; j++)
	if (strchr(mas,str[j])==NULL) 
					{
					sl[g]=str[j]; g++;
					}
		else 
			{
				fl=j;
				int num=atoi(sl); g=0; 
					if (num<20) 
								{
								  printf ("%s minyt(a) ", num20table[num]);break;
								}
						else
							{
							int a=num%10; int b=num/10; 
							if (a==0) {printf ("%s minut(a) ", num100table[b]);break;}
							else {printf ("%s%s minut(a) ", num100table[b], num20table[a]);break;}
							} 
	}

	return fl;
}
но после добавления перед return fl; следующего куска кода:
Код:
if (str[fl]==':')
	for(int h=(fl+1); str[h]!='\0'; h++)
		if (strchr(mas,str[h])==NULL) 
					{
					sl[g]=str[h]; g++;
					}
		else 
			{
				fl=h;
				int num=atoi(sl); g=0; 
					if (num<20) 
								{
								  printf ("%s sekynd(a) ", num20table[num]);break;
								}
						else
							{
							int a=num%10; int b=num/10; 
							if (a==0) {printf ("%s sekynd(a) ", num100table[b]);break;}
							else {printf ("%s%s sekynd(a) ", num100table[b], num20table[a]);break;}
							} 
			}
else {printf ("%c",  str[fl]); g=0;}
	}
стали выдаваться те 2 ошибки....
Chica Bond вне форума Ответить с цитированием
Старый 02.05.2010, 22:23   #6
silent_1991
Пользователь
 
Регистрация: 06.11.2009
Сообщений: 68
По умолчанию

Сааамая последня закрывающая фигурная скобка не нужна, она закрывает всю функцию, а после неё стоит ни к чему не относящийся ретурн.
silent_1991 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В содержании отображается только стиль Заголовок1, хотя в параметрах указаны все девять заголовков alevtina07 Microsoft Office Word 5 20.01.2010 14:03
jQuery ajax символ '+' в передаваемых параметрах A_r_r_a_y JavaScript, Ajax 2 14.01.2010 01:49
Чем отличается описание функции от определения функции в С++? Go6a Помощь студентам 4 18.07.2009 18:07
Функции на СИ tanek Помощь студентам 1 08.04.2009 17:43
Функции. Передача массива в качестве параметра функции. Wia Помощь студентам 2 17.03.2009 14:57