Kde je chyba - program v C
Michal Gregor
a2x1nptda8 na email.cz
Středa Říjen 2 13:49:27 CEST 2013
No, kupodivu Visual Basic chybu nehlasi. Mel jsem o nem lepsi mineni.
Tvurci prog. jazyku jsou prilis benevolentni. Kolik bylo zbytecne ztraceno
pracovnich hodin za ty roky po celem svete?
Michal Gregor
----- Original Message -----
From: "Jan Waclawek" <konfera na efton.sk>
To: "HW-news" <hw-list na list.hw.cz>
Sent: Wednesday, October 02, 2013 1:30 PM
Subject: Re: Kde je chyba - program v C
>Kde je chyba v nasledujicim radku?
>
>if (EE_Cti(K_EE_SPOJENI == 1)) {
>
> Spust_neco()
>}
To su 4 riadky... ;-)
A nie je tam ziadna syntakticka chyba - EE_Cti sa zavola s parametrom 1, ak
K_EE_SPOJENI ma hodnotu 1; inak s parametrom 0.
>Zajimalo by mne jak se tato chyba projevi v jinych jazycich treba C#, Java,
>Paskal. Bude kompilator hlasit chybu?
Pascal je prisne typovany jazyk a nedaju sa len tak mirnix-dirnix zamienat
celociselne a booleanovske typy, takze by musela byt funkcia EE_Cti
deklarovana s parametrom typu boolean; rovnako funkcia EE_Cti by musela
mat navratovu hodnotu typu boolean; inak je to syntakticka chyba.
Napriklad:
var
K_EE_SPOJENI: byte;
procedure Spust_neco;
begin
end;
function EE_Cti(i: byte) : byte;
begin
EE_Cti := i;
end;
begin
K_EE_SPOJENI := 123;
if (EE_Cti(K_EE_SPOJENI = 1)) then begin
Spust_neco;
end;
end.
> "c:\lazarus\fpc\2.2.4\bin\i386-win32\fpc.exe" "C:\tmp\a.pas"
Free Pascal Compiler version 2.2.4 [2009/10/25] for i386
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Win32 for i386
Compiling C:\tmp\a.pas
a.pas(16,30) Error: Incompatible type for arg no. 1: Got "Boolean",
expected "Byte"
a.pas(20) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
Error: c:\lazarus\fpc\2.2.4\bin\i386-win32\ppc386.exe returned an error
exitcode (normal if you did not specify a source file to be compiled)
wek
_______________________________________________
HW-list mailing list - sponsored by www.HW.cz
Hw-list na list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list
Další informace o konferenci Hw-list