Ada_Ru форум

Обсуждение языка Ада

Help! Помогите с Си-шным компилятором gcc!

Оставить новое сообщение

Сообщения

Sergey I. Rybin
Help! Помогите с Си-шным компилятором gcc!
2005-11-09 18:29:00

Ребята, я понимаю, что оно офтопик голимый, что мы здесь

все за Аду, но - очень надо!

 

Ребенок стал изучать Си. Дома, в качестве тренировочного

компилятора, понятное дело, GNAT+GPS.

 

И вот наткнулись с ходу на дурацкую проблему: как с клавиатуры

для Си-шной программы, откомпилированной gcc, ввести символ EOF?

 

ПОскольку сам я Си до сих пор не знаю, ничего не остается, как

обратиться за помощью к Адским коллегам :)

 

Ну, например, как заставить работать такую программку:

 

#include <stdio.h>

 

main() /* convert input to lower case */

{

int c;

 

while ((c = getchar()) != EOF)

putchar(isupper(c) ? tolower(c) : c);

}

 

вводя данные с клавиатуры? Control-D не работает. Что мы можем неправильно

делать?

Забыл добавить - все это происходит в Windows

А EOF случайно не ctrl-Z? ;)

 

Увы, нет...

 

Vladimir

PS Кстати, а как gnat Ц-программу компилировать?

3.15p виндовый умеет?

 

Да запросто - он по суффиксу в имени файла зовет нужный

фронт-енд, а Си-шный в gcc есть всегда по умолчанию.

 

Уметь компилировть Си должен любой gcc, причем - везде.

А EOF случайно не ctrl-Z? ;)

 

Точно, оно!!! У меня поначалу руки кривые были!

 

Спасибо!

On Sun, 09 Oct 2005 22:29:00 +0400, Sergey I. Rybin <rybin@...> wrote:

..

while ((c = getchar()) != EOF)

putchar(isupper(c) ? tolower(c) : c);

}

 

вводя данные с клавиатуры? Control-D не работает. Что мы можем неправильно делать?

 

А EOF случайно не ctrl-Z? ;)

 

Vladimir

PS Кстати, а как gnat Ц-программу компилировать?

3.15p виндовый умеет?

 

-- Using Opera's revolutionary e-mail client: http://www.opera.com/m2/

On Mon, 10 Oct 2005 00:59:11 +0400, Sergey I. Rybin <rybin@...> wrote:

 

PS Кстати, а как gnat Ц-программу компилировать?

3.15p виндовый умеет?

 

Да запросто - он по суффиксу в имени файла зовет нужный

фронт-енд, а Си-шный в gcc есть всегда по умолчанию.

 

Уметь компилировть Си должен любой gcc, причем - везде.

 

Дак сам gcc Ц-ный должен еще отдельно стоять?

Или в том gnat 3.15p он встроенный есть?

(может в юниксовых сборниках хлама gcc и по умолчанию

есть, но в винде-то его нет ;) )

 

Vladimir

PS Только-что на еще один глюк в opera напоролся - запускаю - он

спрашивает типа чего желаем, продолжить старые окна типа или с нуля...

В это время ее глюко-мыло-клиент уже успел слазить за почтой

и стянуть пару писем(это он типа наверно за старое - пару дней

на канале пакеты терялись, дак эта глюкалка за 2 ночи ни одного

письма стянуть не смогла!) - в углу рисует окно типа стянул, ткните сюда

если желаете посмотреть... Ну, почему бы не ткнуть ;) А оно открывает

по этой ссылке одно окно с мылом, все остальные затирает нафиг :/

(теперь дня два вспоминать что там было и надо было посмотреть :/)

Блин, руки бы оторвать - ну не могут грамотно прописать флаги

процессов, зачем спрашивается пытаться браться за такие сложные

навороты...

-- Using Opera's revolutionary e-mail client: http://www.opera.com/m2/

 

Дак сам gcc Ц-ный должен еще отдельно стоять?

Или в том gnat 3.15p он встроенный есть?

(может в юниксовых сборниках хлама gcc и по умолчанию

есть, но в винде-то его нет ;) )

 

Как так - нет?! ДолжОн быть встроенный! То есть, тем же

gcc, что и GNAT - берешь и компилируешь Си-шный

код. И - должно работать!

Новое сообщение:
Страницы: 1

Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти