.\" -*- coding: UTF-8 -*-
'\" t
.\" Copyright (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de)
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.\" Modified Sat Jul 24 21:42:42 1993 by Rik Faith <faith@cs.unc.edu>
.\" Modified Tue Oct 22 23:44:11 1996 by Eric S. Raymond <esr@thyrsus.com>
.\" Modified Thu Jun  2 23:44:11 2016 by Nikos Mavrogiannopoulos <nmav@redhat.com>
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH assert 3 "2 maja 2024 r." "Linux man\-pages 6.9.1" 
.SH NAZWA
assert \- przerywa pracę programu, jeśli wyrażenie jest fałszywe
.SH BIBLIOTEKA
Standardowa biblioteka C (\fIlibc\fP, \fI\-lc\fP)
.SH SKŁADNIA
.nf
\fB#include <assert.h>\fP
.P
\fBvoid assert(scalar \fP\fIwyrażenie\fP\fB);\fP
.fi
.SH OPIS
To makro może pomóc programistom znajdować błędy w ich programach lub
obsługiwać wyjątki przez wywołanie awarii zapewniającej ograniczone wyjście
debugowania.
.P
Jeśli \fIwyrażenie\fP jest fałszywe (to jest równe zeru), \fBassert\fP() wyświetli
błąd na standardowe wyjście błędów i przerywa pracę programu przez wywołanie
\fBabort\fP(3). Komunikat błędu zawiera nazwę pliku i funkcji zawierającej
wywołanie \fBassert\fP(), numer wiersza kodu źródłowego z wywołaniem i tekst
argumentu np.:
.P
.in +4n
.EX
prog: some_file.c:16: some_func: Assertion \`val == 0\[aq] failed.
.EE
.in
.P
Jeśli w momencie ostatniego włączenia pliku \fI<assert.h>\fP było
zdefiniowane makro \fBNDEBUG\fP, to makro \fBassert\fP() nie generuje żadnego
kodu, więc w ogóle nic nie robi. Nie zaleca się definiowania \fBNDEBUG\fP przy
używaniu \fBassert\fP() do wykrywania błędów, ponieważ oprogramowanie może
zachowywać się nieprzewidywalnie.
.SH "WARTOŚĆ ZWRACANA"
Nie jest zwracana żadna wartość.
.SH ATRYBUTY
Informacje o pojęciach używanych w tym rozdziale można znaleźć w podręczniku
\fBattributes\fP(7).
.TS
allbox;
lbx lb lb
l l l.
Interfejs	Atrybut	Wartość
T{
.na
.nh
\fBassert\fP()
T}	Bezpieczeństwo wątkowe	MT\-bezpieczne
.TE
.SH STANDARDY
C11, POSIX.1\-2008.
.SH HISTORIA
C89, C99, POSIX.1\-2001.
.P
.\" See Defect Report 107 for more details.
W C89 \fIwyrażenie\fP musi być typu \fIint\fP, w przeciwnym wypadku zachowanie
funkcji jest nieokreślone, jednakże w C99 może być dowolnego typu
skalarnego.
.SH USTERKI
\fBassert\fP() jest zaimplementowane jako makro. Jeśli testowane wyrażenie ma
jakieś efekty uboczne, zachowanie programu będzie różne w zależności od
tego, czy zdefiniowano makrodefinicję \fBNDEBUG\fP. Może to prowadzić do
Heisenbugów [patrz: http://pl.wikipedia.org/wiki/Heisenbug \- przyp.tłum.],
które nie występują przy włączonym odpluskwianiu.
.SH "ZOBACZ TAKŻE"
\fBabort\fP(3), \fBassert_perror\fP(3), \fBexit\fP(3)
.PP
.SH TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika:
Adam Byrtek <alpha@irc.pl>,
Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl>,
Robert Luberda <robert@debian.org>
i
Michał Kułach <michal.kulach@gmail.com>
.
.PP
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach
licencji można uzyskać zapoznając się z
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License w wersji 3
.UE
lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
.PP
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy
dyskusyjnej
.MT manpages-pl-list@lists.sourceforge.net
.ME .
