Вопрос № 106175: Здравствуйте!
При програмировании использую gcc под Win.
При запуске этой программы например:
#include <stdio.h>
int main(void)
{
int dogs;
printf("Сколько у вас собак?
");
scanf("%d", &do...Вопрос № 106189: Скажите пожалуйста, как считать строку с клавиатуры в массив?(с пробелами). Ниже приведен вариант, но компилятор почему-то игнорирует cin.getline....
Вопрос № 106.175
Здравствуйте!
При програмировании использую gcc под Win.
При запуске этой программы например:
#include
int main(void)
{
int dogs;
printf("Сколько у вас собак?
");
scanf("%d", &dogs);
printf("Следовательно, у вас %d собак(а, и)!
", dogs);
return 0;
}
в консоле он выводит "иероглифы" вместо латиницы. Что можно сделать для того чтобы он выводил латиницу как надо.
Отправлен: 20.10.2007, 17:18
Вопрос задал: KuchumHan (статус: Студент)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: CruelHity
Здравствуйте, KuchumHan!
Здраствуйте вот две функции которые пререводят с Win кодировки в Dos и обратно!
Пропишите в свое проге так:
printf("%s",WinToDos("Сколько у вас собак?
"));
или
{
strcpy(buf,WinToDos("Сколько у вас собак?
"));
printf("%s",buf);
}
Удачи!!
Приложение:
Ответ отправил: CruelHity (статус: 2-ой класс)
Ответ отправлен: 20.10.2007, 17:27 Оценка за ответ: 5 Комментарий оценки: Спасибо конечно, только вот что мне выдал компилятор: g++.exe -x c++ -c C:gccsourceStivPrataListing1-1.c -o C:gccsourceStivPrataListing1-1.o -Wall -fpermissive C:gccsourceStivPrataListing1-1.c: In function `int main()': C:gccsourceStivPrataListing1-1.c:5: warning: implicit declaration of function `int WinToDos(...)' C:gccsourceStivPrataListing1-1.c:5:
warning: format argument is not a pointer (arg 2) C:gccsourceStivPrataListing1-1.c:7: warning: format argument is not a pointer (arg 2) Success g++.exe C:gccsourceStivPrataListing1-1.o -o C:gccsourceStivPrataListing1-1.exe -Wall -fpermissive C:gccsourceStivPrataListing1-1.o(.text+0x5f):Listing1-1.c: undefined reference to `WinToDos' C:gccsourceStivPrataListing1-1.o(.text+0x9a):Listing1-1.c: undefined reference to `WinToDos' Failure
Отвечает: kool
Здравствуйте, KuchumHan!
Написать ф-цию перекодировки или
при создании текста программы
в редакторе установить нужную кодировку.
Удачи!
--------- I am.
Ответ отправил: kool (статус: Практикант)
Ответ отправлен: 20.10.2007, 18:34
Вопрос № 106.189
Скажите пожалуйста, как считать строку с клавиатуры в массив?(с пробелами). Ниже приведен вариант, но компилятор почему-то игнорирует cin.getline.
Приложение:
Отправлен: 20.10.2007, 20:36
Вопрос задал: Copogu4 (статус: Посетитель)
Всего ответов: 4 Мини-форум вопроса >>> (сообщений: 2)
Отвечает: CruelHity
Здравствуйте, Copogu4!
Существует еще в stdio.h функция gets
int main( void )
{
char line[21]; // room for 20 chars + ' gets( line ); // Danger: No way to limit input to 20 chars.
// Much preferable: fgets( line, 21, stdin );
// but you'd have to remove the trailing '
'
printf( "The line entered was: %s
", line );
}
Удачи!
Ответ отправил: CruelHity (статус: 2-ой класс)
Ответ отправлен: 20.10.2007, 20:47
Отвечает: Verena
Здравствуйте, Copogu4!
Что-то в Вашем примере я cin.getline не вижу. Но если раньше она там была, то проверьте, правильно ли Вы указываете параметры: cin.getline (строка_буфер, максимальное_количество_символов_для_считывания). Кстати, в строку надо считывать на один символ меньше, чем объявлено - последний байт идёт на символ конца строки '
char someText [51];
int i;
cout << "Enter the text
";
cin.getline (someText, 50);
cout << "Your string: ";
for (i = 0; i<10; i++)
{
cout << someText[i];
}
return 0;
Удачи!
--------- Эта история - не для истории, понимаешь?
Ответ отправила: Verena (статус: Студент)
Ответ отправлен: 20.10.2007, 21:01
Отвечает: Lestat de Lionkur
Здравствуйте, Copogu4!
Воспользуйтесь оператором cin.
Ответ смотрите ниже.
Приложение:
Ответ отправил: Lestat de Lionkur (статус: 3-ий класс)
Ответ отправлен: 21.10.2007, 01:31
Отвечает: Попов А.С.
Здравствуйте, Copogu4!
А если так:
#include <stdio.h>
int main()
{
char s[51];
fgets(s, 50, stdin);
cout<<s;
}
Ответ отправил: Попов А.С. (статус: 3-ий класс)
Ответ отправлен: 21.10.2007, 08:22