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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.11.2008, 23:10   #1
le_den
Новичок
Джуниор
 
Регистрация: 24.11.2008
Сообщений: 1
По умолчанию вместо номера телефона выводится на экран какой-то мусор

Есть следущий код:

Код:
#include<stdio.h>
#include<conio.h>
void main()
{
	char name[10],family[15];
	int year_b,year_p;
	clrscr();
	printf("Insert your name and surname:\n");
	scanf("%s%s",&name,&family);
	printf("Insert present year and your birth year:\n");
	scanf("%d%d",&year_p,&year_b);
	printf("Insert your telephone or mobile phone number:\n");
	printf("\n\n\nHere is your private details:\n********************\n\n\nName and Surname:\n%s %s.\nYour age:\n%d",name,family,(int)(year_p-year_b));
	getch();
}
Он принимает данные с клавиатуры (имя, фамилию, нынешний год и год рождения, номер телефона) и по идее должен это все вывести на экран. Вся загвоздка в том что вместо номера телефона выводится на экран какой-то мусор. Помогите пожалуйста! Заранее благодарю за помощь!
le_den вне форума Ответить с цитированием
Старый 25.11.2008, 01:55   #2
pupor
 
Регистрация: 21.11.2008
Сообщений: 6
По умолчанию

printf("Insert your telephone or mobile phone number:\n");
printf("\n\n\nHere is your private details:\n********************\n\n\ nName and Surname:\n%s %s.\nYour age:\n%d",name,family,(int)(year_p-year_b));


где ввод номера телефона? или его вывод? не вижу даже переменной в которой он хранится...
pupor вне форума Ответить с цитированием
Старый 25.11.2008, 20:45   #3
theos
Форумчанин
 
Аватар для theos
 
Регистрация: 10.12.2007
Сообщений: 158
По умолчанию

Код:
scanf("%s%s",&name,&family);
Тут у Вас ошибка. name и family являются указателями. По-этому тут не нужна операция получения адреса (&).

Пишите
Код:
scanf("%s",name);
scanf("%s",family);
То есть когда Вы пишете например
Код:
char name[10];
тип переменной name будет char*. А память под массив выделится статически.
theos вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вывод картинки *.png на экран телефона furstenberg Общие вопросы по Java, Java SE, Kotlin 3 31.07.2008 22:07
Номер телефона словами alexBlack Софт 0 23.05.2008 09:19
Определение номера телефона xpress Общие вопросы по Java, Java SE, Kotlin 6 29.04.2008 20:02
Автоопределение телефона [Smarik] PHP 6 15.03.2008 17:26
сообщение не выводится(echo) ERASERROR PHP 26 27.01.2008 02:13