IPB
ЛогинПароль:

> Правила раздела!

1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!

2 страниц V  1 2 >  
 Ответить  Открыть новую тему 
> Переменная строки запуска, как считать строку запуска в переменную?
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской
Реальное имя: Resager

Репутация: -  0  +


Как сделать в Паскале так, чтобы использовать в переменной ключ строки запуска
например, запускаешь (ХХХ.ехе -к), и в программе использовать этот ключ ("к", или "-к")?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


в следующий раз используй поиск: Как передать параметры программе?


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской
Реальное имя: Resager

Репутация: -  0  +


Я искал, не нашёл, пасиба, папробую, а в трэй можна каким-нибудь процессом запихнуть?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






В трей? Из 16-битного DOS-приложения? Ты разделом не ошибся, часом? blink.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской
Реальное имя: Resager

Репутация: -  0  +


хм, я в процессе изучения, патаму и спрашиваю, ваще ДОС мне нравицо! Сделал себе заменитель тулбара - батник, а Паскаль как доп. ф-ции к батнику! Где можна скачать хороший учебник по Паскалю + всё про ДОС приложения, хачю узнать больше!!!!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гуру
*****

Группа: Пользователи
Сообщений: 1 220
Пол: Мужской

Репутация: -  16  +


Цитата(Resager @ 22.09.2007 18:03) *

Где можна скачать хороший учебник по Паскалю + всё про ДОС приложения, хачю узнать больше!!!!

http://zeus.sai.msu.ru:7000/programming/bp70_lr/index.shtml
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской
Реальное имя: Resager

Репутация: -  0  +


У меня не получается получить ключи!!!

Вот сама прога:
var
s: string; i:integer; c:word;
begin
i:=ParamCount;
s:=ParamStr©;
Writeln('s(string)=',s,' i(inteher)=',i,' c(word)=');
writeln;
writeln('code:');
writeln('var s: string; i:integer; c:word; ');
writeln('begin ');
writeln('i:=ParamCount; ');
writeln('s:=ParamStr©; ');
writeln('Writeln(*s(string)=*,s,* i(inteher)=*,i,* c(word)=*); ');
readln; end.


А во что я получаю:
____1__param(это первая попытка) ввёл так -k
s(string)=D:\PAS\BIN\PM\PARAM.EXE i(inteher)=1 c(word)=

code:
var s: string; i:integer; c:word;
begin
i:=ParamCount;
s:=ParamStr©;
Writeln(*s(string)=*,s,* i(inteher)=*,i,* c(word)=*);

Для продолжения нажмите любую клавишу . . .
____2__param(это вторая попытка ввёл так -k -r
s(string)=D:\PAS\BIN\PM\PARAM.EXE i(inteher)=2 c(word)=

code:
var s: string; i:integer; c:word;
begin
i:=ParamCount;
s:=ParamStr©;
Writeln(*s(string)=*,s,* i(inteher)=*,i,* c(word)=*);

З.ы. Ozzя А есть в оффлайн?

Сообщение отредактировано: Resager -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Цитата(Resager @ 24.09.2007 17:01) *

У меня не получается получить ключи!!!

Вот сама прога:
var
s: string; i:integer; c:word;
begin
i:=ParamCount;
s:=ParamStr©;
Writeln('s(string)=',s,' i(inteher)=',i,' c(word)=');
writeln;
writeln('code:');
writeln('var s: string; i:integer; c:word; ');
writeln('begin ');
writeln('i:=ParamCount; ');
writeln('s:=ParamStr©; ');
writeln('Writeln(*s(string)=*,s,* i(inteher)=*,i,* c(word)=*); ');
readln; end.


А во что я получаю:
____1__param(это первая попытка) ввёл так -k
s(string)=D:\PAS\BIN\PM\PARAM.EXE i(inteher)=1 c(word)=

code:
var s: string; i:integer; c:word;
begin
i:=ParamCount;
s:=ParamStr©;
Writeln(*s(string)=*,s,* i(inteher)=*,i,* c(word)=*);

Для продолжения нажмите любую клавишу . . .
____2__param(это вторая попытка ввёл так -k -r
s(string)=D:\PAS\BIN\PM\PARAM.EXE i(inteher)=2 c(word)=

code:
var s: string; i:integer; c:word;
begin
i:=ParamCount;
s:=ParamStr©;
Writeln(*s(string)=*,s,* i(inteher)=*,i,* c(word)=*);

З.ы. Ozzя А есть в оффлайн?

А что не так? С изначально равно нулю, а нулевой параметр - это путь к самой программе.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Профи
****

Группа: Пользователи
Сообщений: 930
Пол: Мужской

Репутация: -  11  +


Цитата(Resager @ 24.09.2007 13:01) *

А есть в оффлайн?

Было smile.gif На диске "паскаль & delphi". Самого морозит от учебников распылённых по сети и в других трудночитаемых формах. Лови, что под рукой оказалось smile.gif


Прикрепленные файлы
Прикрепленный файл  VIRTUALK.A.rar ( 1.49 мегабайт ) Кол-во скачиваний: 109
Прикрепленный файл  7.rar ( 206.78 килобайт ) Кол-во скачиваний: 115
Прикрепленный файл  F.rar ( 481.42 килобайт ) Кол-во скачиваний: 110
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской
Реальное имя: Resager

Репутация: -  0  +


SKVOZNJAK - ПАСИБА, ещё не всё скачал, но скачаю как время будет (сейчас сижу в институтском "бесплатном" интернете, что само за себя гаварит - тормозной = 1кб в с....)

TarasBer - так я же ввожу ключи и параметр равен 2 или 1 (там 2 случая). если нулевой параметр равен нулю, то как получить второй параметр? Может вставить в ParamStr(c,u) вторую переменную "u"?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Цитата(Resager @ 25.09.2007 19:12) *

SKVOZNJAK - ПАСИБА, ещё не всё скачал, но скачаю как время будет (сейчас сижу в институтском "бесплатном" интернете, что само за себя гаварит - тормозной = 1кб в с....)

TarasBer - так я же ввожу ключи и параметр равен 2 или 1 (там 2 случая). если нулевой параметр равен нулю, то как получить второй параметр? Может вставить в ParamStr(c,u) вторую переменную "u"?


С изначально равно нулю. Потому что вы его никак не определяли. А по умолчанию он ноль. И вы берёте ПарамСтр(С). И он даёт нулевой параметр - само имя программы вместе с путём. Если хотите знать эн-тый параметр, то перед вызовом ПарамСтр(С) впишите С := эн.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской
Реальное имя: Resager

Репутация: -  0  +


TarasBer - теперь я понял, пасиба, а ещё один вопрос, у меня поключаемые модули отсутствуют, ккакие файлы мне нужно найти и вставить в папку с Паскалем штоб они отображались?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Цитата(Resager @ 25.09.2007 19:41) *

TarasBer - теперь я понял, пасиба, а ещё один вопрос, у меня поключаемые модули отсутствуют, ккакие файлы мне нужно найти и вставить в папку с Паскалем штоб они отображались?

Какие модули? И где они должны отображаться? Чёт не понял вопроса.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской
Реальное имя: Resager

Репутация: -  0  +


Типа crt, graphic......
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Цитата(Resager @ 26.09.2007 16:02) *

Типа crt, graphic......

Ну пишешь в начале текста uses CRT, Graph; (graphicS - это из дельфы)
А в чём проблема-то?


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #16


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской
Реальное имя: Resager

Репутация: -  0  +


TarasBer, проблема в том, что компилятор выдаёт ошибку типа не найден файл, или это чё за фигня (примерно так)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #17


Гость






Путь к файлу Graph.TPU в меню "Options -> Directories -> Unit Directories" прописан?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #18


Новичок
*

Группа: Пользователи
Сообщений: 17
Пол: Мужской
Реальное имя: Resager

Репутация: -  0  +


Как сделать в три действия (использовать можно тока * и + и присвоить, но sqrt нельзя):
a(в восьмой степени)
и в минимум действий:
a(в седьмой),
(а+1)(в 21-ой)
(а+в)(в 100-й)
(х+у)(в 8-й)
(а+в+с)(в 32-й)
З. Ы. Тока не смейтесь.

volvo, был не прописан (диск не тот) но при выполнении проги с дилэем выдаёт DIVISION BY ZERO, но кампилирует!
вот
Код

uses Crt;

begin
   Sound(220);        { Beep }
   Delay(200);        { For 200 ms }
   NoSound;           { Relief! }
end.


А вот с графикой (кампилирует, но ничего не выводит)
Код

Uses graph;
Var gd, gm, err, x, y:integer;
begin
gd:=detect;
initgraph(gd,gm,' ');
err:=graphresult;
if (err<>grok) then begin
   Writeln(grapherrormsg(err));
   Halt(1);
end;
x:=getmaxx div 2;
y:=getmaxy div 2;
Setcolor(2);
Circle(x,y,100);
Closegraph;
readln; end.


Сообщение отредактировано: Resager -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #19


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Цитата(Resager @ 1.10.2007 20:25) *

Как сделать в три действия (использовать можно тока * и + и присвоить, но sqrt нельзя):
a(в восьмой степени)
и в минимум действий:
a(в седьмой),
(а+1)(в 21-ой)
(а+в)(в 100-й)
(х+у)(в 8-й)
(а+в+с)(в 32-й)
З. Ы. Тока не смейтесь.


Я знаю как, но скажу лишь в новой теме.

Цитата

volvo, был не прописан (диск не тот) но при выполнении проги с дилэем выдаёт DIVISION BY ZERO, но кампилирует!
вот
Код

uses Crt;

begin
   Sound(220);        { Beep }
   Delay(200);        { For 200 ms }
   NoSound;           { Relief! }
end.



Вот на этом вылетает с делением на 0?

Цитата


А вот с графикой (кампилирует, но ничего не выводит)
Код

Uses graph;
Var gd, gm, err, x, y:integer;
begin
gd:=detect;
initgraph(gd,gm,' ');
err:=graphresult;
if (err<>grok) then begin
   Writeln(grapherrormsg(err));
   Halt(1);
end;
x:=getmaxx div 2;
y:=getmaxy div 2;
Setcolor(2);
Circle(x,y,100);
Closegraph;
readln; end.



Поменяйте местами клозеграф и ридлн.


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #20


Гость






Цитата
при выполнении проги с дилэем выдаёт DIVISION BY ZERO
В FAQ... Там есть тема, в которой описано, что делать в таком случае...
 К началу страницы 
+ Ответить 

2 страниц V  1 2 >
 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 24.09.2020 16:25
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name