2020-09-17 10:42:59 +00:00
|
|
|
.\" Copyright (c) 2020 by Alejandro Colomar <colomar.6.4.3@gmail.com>
|
2020-09-22 08:29:04 +00:00
|
|
|
.\" and Copyright (c) 2020 by Michael Kerrisk <mtk.manpages@gmail.com>
|
2020-09-17 10:42:59 +00:00
|
|
|
.\"
|
|
|
|
.\" %%%LICENSE_START(VERBATIM)
|
|
|
|
.\" Permission is granted to make and distribute verbatim copies of this
|
|
|
|
.\" manual provided the copyright notice and this permission notice are
|
|
|
|
.\" preserved on all copies.
|
|
|
|
.\"
|
|
|
|
.\" Permission is granted to copy and distribute modified versions of this
|
|
|
|
.\" manual under the conditions for verbatim copying, provided that the
|
|
|
|
.\" entire resulting derived work is distributed under the terms of a
|
|
|
|
.\" permission notice identical to this one.
|
|
|
|
.\"
|
|
|
|
.\" Since the Linux kernel and libraries are constantly changing, this
|
|
|
|
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
|
|
|
.\" responsibility for errors or omissions, or for damages resulting from
|
|
|
|
.\" the use of the information contained herein. The author(s) may not
|
|
|
|
.\" have taken the same level of care in the production of this manual,
|
|
|
|
.\" which is licensed free of charge, as they might when working
|
|
|
|
.\" professionally.
|
|
|
|
.\"
|
|
|
|
.\" Formatted or processed versions of this manual, if unaccompanied by
|
|
|
|
.\" the source, must acknowledge the copyright and authors of this work.
|
|
|
|
.\" %%%LICENSE_END
|
|
|
|
.\"
|
|
|
|
.\"
|
getent.1, ldd.1, locale.1, localedef.1, memusage.1, memusagestat.1, mtrace.1, _exit.2, _syscall.2, accept.2, access.2, acct.2, add_key.2, adjtimex.2, alloc_hugepages.2, arch_prctl.2, bdflush.2, bind.2, bpf.2, brk.2, cacheflush.2, capget.2, chdir.2, chmod.2, chown.2, chroot.2, clock_getres.2, clock_nanosleep.2, clone.2, close.2, close_range.2, connect.2, copy_file_range.2, create_module.2, delete_module.2, dup.2, epoll_create.2, epoll_ctl.2, epoll_wait.2, eventfd.2, execve.2, execveat.2, fanotify_init.2, fanotify_mark.2, fcntl.2, flock.2, fork.2, fsync.2, futex.2, get_kernel_syms.2, get_mempolicy.2, get_robust_list.2, getcpu.2, getdents.2, getdomainname.2, getgid.2, getgroups.2, gethostname.2, getitimer.2, getpagesize.2, getpeername.2, getpid.2, getpriority.2, getrandom.2, getresuid.2, getrlimit.2, getrusage.2, getsid.2, getsockname.2, getsockopt.2, gettid.2, gettimeofday.2, getuid.2, getunwind.2, getxattr.2, idle.2, init_module.2, inotify_add_watch.2, inotify_rm_watch.2, io_cancel.2, io_destroy.2, io_getevents.2, io_setup.2, io_submit.2, ioctl.2, ioctl_console.2, ioctl_fat.2, ioctl_ficlonerange.2, ioctl_fideduperange.2, ioctl_fslabel.2, ioctl_getfsmap.2, ioctl_ns.2, ioctl_tty.2, ioctl_userfaultfd.2, ioperm.2, iopl.2, ipc.2, kcmp.2, kexec_load.2, keyctl.2, kill.2, link.2, listen.2, listxattr.2, llseek.2, lookup_dcookie.2, lseek.2, madvise.2, mbind.2, membarrier.2, memfd_create.2, migrate_pages.2, mincore.2, mkdir.2, mknod.2, mlock.2, mmap.2, mmap2.2, modify_ldt.2, mount.2, move_pages.2, mprotect.2, mq_getsetattr.2, mremap.2, msgctl.2, msgget.2, msgop.2, msync.2, nanosleep.2, nfsservctl.2, nice.2, open.2, open_by_handle_at.2, openat2.2, pause.2, pciconfig_read.2, perf_event_open.2, perfmonctl.2, personality.2, pidfd_getfd.2, pidfd_open.2, pidfd_send_signal.2, pipe.2, pivot_root.2, pkey_alloc.2, poll.2, posix_fadvise.2, prctl.2, pread.2, process_vm_readv.2, ptrace.2, query_module.2, quotactl.2, read.2, readahead.2, readdir.2, readlink.2, readv.2, reboot.2, recv.2, remap_file_pages.2, removexattr.2, rename.2, request_key.2, restart_syscall.2, rmdir.2, rt_sigqueueinfo.2, s390_guarded_storage.2, s390_pci_mmio_write.2, s390_runtime_instr.2, s390_sthyi.2, sched_get_priority_max.2, sched_rr_get_interval.2, sched_setaffinity.2, sched_setattr.2, sched_setparam.2, sched_setscheduler.2, sched_yield.2, seccomp.2, select.2, select_tut.2, semctl.2, semget.2, semop.2, send.2, sendfile.2, set_thread_area.2, seteuid.2, setfsgid.2, setfsuid.2, setgid.2, setpgid.2, setresuid.2, setreuid.2, setsid.2, setuid.2, setup.2, setxattr.2, sgetmask.2, shmctl.2, shmget.2, shmop.2, shutdown.2, sigaction.2, sigaltstack.2, signal.2, signalfd.2, sigpending.2, sigprocmask.2, sigreturn.2, sigsuspend.2, sigwaitinfo.2, socket.2, socketcall.2, socketpair.2, splice.2, spu_create.2, spu_run.2, stat.2, statfs.2, statx.2, stime.2, subpage_prot.2, swapon.2, symlink.2, sync.2, sync_file_range.2, syscall.2, syscalls.2, sysctl.2, sysfs.2, sysinfo.2, syslog.2, time.2, timer_create.2, timer_delete.2, timer_getoverrun.2, timer_settime.2, timerfd_create.2, times.2, tkill.2, truncate.2, umask.2, umount.2, uname.2, unimplemented.2, unlink.2, unshare.2, uselib.2, userfaultfd.2, ustat.2, utime.2, utimensat.2, vfork.2, vhangup.2, vm86.2, vmsplice.2, wait.2, wait4.2, write.2, CPU_SET.3, __ppc_get_timebase.3, __ppc_set_ppr_med.3, __ppc_yield.3, __setfpucw.3, a64l.3, abort.3, abs.3, acos.3, acosh.3, addseverity.3, adjtime.3, aio_cancel.3, aio_error.3, aio_fsync.3, aio_read.3, aio_return.3, aio_suspend.3, aio_write.3, alloca.3, argz_add.3, asin.3, asinh.3, asprintf.3, assert.3, assert_perror.3, atan.3, atan2.3, atanh.3, atexit.3, atof.3, atoi.3, backtrace.3, basename.3, bcmp.3, bcopy.3, bindresvport.3, bsd_signal.3, bsearch.3, bstring.3, btowc.3, byteorder.3, bzero.3, cabs.3, cacos.3, cacosh.3, canonicalize_file_name.3, carg.3, casin.3, casinh.3, catan.3, catanh.3, catgets.3, catopen.3, cbrt.3, ccos.3, ccosh.3, ceil.3, cexp.3, cexp2.3, cfree.3, cimag.3, circleq.3, clearenv.3, clock.3, clock_getcpuclockid.3, clog.3, clog10.3, clog2.3, closedir.3, cmsg.3, confstr.3, conj.3, copysign.3, cos.3, cosh.3, cpow.3, cproj.3, creal.3, crypt.3, csin.3, csinh.3, csqrt.3, ctan.3, ctanh.3, ctermid.3, ctime.3, daemon.3, des_crypt.3, difftime.3, dirfd.3, div.3, dl_iterate_phdr.3, dladdr.3, dlerror.3, dlinfo.3, dlopen.3, dlsym.3, drand48.3, drand48_r.3, duplocale.3, dysize.3, ecvt.3, ecvt_r.3, encrypt.3, endian.3, envz_add.3, erf.3, erfc.3, err.3, errno.3, error.3, ether_aton.3, euidaccess.3, exec.3, exit.3, exp.3, exp10.3, exp2.3, expm1.3, fabs.3, fclose.3, fcloseall.3, fdim.3, fenv.3, ferror.3, fexecve.3, fflush.3, ffs.3, fgetc.3, fgetgrent.3, fgetpwent.3, fgetwc.3, fgetws.3, fileno.3, finite.3, flockfile.3, floor.3, fma.3, fmax.3, fmemopen.3, fmin.3, fmod.3, fmtmsg.3, fnmatch.3, fopen.3, fopencookie.3, fpathconf.3, fpclassify.3, fpurge.3, fputwc.3, fputws.3, fread.3, frexp.3, fseek.3, fseeko.3, ftime.3, ftok.3, fts.3, ftw.3, futimes.3, fwide.3, gamma.3, gcvt.3, get_nprocs_conf.3, get_phys_pages.3, getaddrinfo.3, getaddrinfo_a.3, getauxval.3, getcontext.3, getcwd.3, getdate.3, getdirentries.3, getdtablesize.3, getentropy.3, getenv.3, getfsent.3, getgrent.3, getgrent_r.3, getgrnam.3, getgrouplist.3, gethostbyname.3, gethostid.3, getifaddrs.3, getipnodebyname.3, getline.3, getloadavg.3, getlogin.3, getmntent.3, getnameinfo.3, getnetent.3, getnetent_r.3, getopt.3, getpass.3, getprotoent.3, getprotoent_r.3, getpt.3, getpw.3, getpwent.3, getpwent_r.3, getpwnam.3, getrpcent.3, getrpcent_r.3, getrpcport.3, gets.3, getservent.3, getservent_r.3, getspnam.3, getsubopt.3, getttyent.3, getumask.3, getusershell.3, getutent.3, getutmp.3, getw.3, getwchar.3, glob.3, gnu_get_libc_version.3, grantpt.3, group_member.3, gsignal.3, hsearch.3, hypot.3, iconv.3, iconv_close.3, iconv_open.3, if_nameindex.3, if_nametoindex.3, ilogb.3, index.3, inet.3, inet_net_pton.3, inet_ntop.3, inet_pton.3, initgroups.3, insque.3, isalpha.3, isatty.3, isfdtype.3, isgreater.3, iswalnum.3, iswalpha.3, iswblank.3, iswcntrl.3, iswctype.3, iswdigit.3, iswgraph.3, iswlower.3, iswprint.3, iswpunct.3, iswspace.3, iswupper.3, iswxdigit.3, j0.3, key_setsecret.3, killpg.3, ldexp.3, lgamma.3, lio_listio.3, list.3, localeconv.3, lockf.3, log.3, log10.3, log1p.3, log2.3, logb.3, login.3, lrint.3, lround.3, lsearch.3, lseek64.3, makecontext.3, makedev.3, mallinfo.3, malloc.3, malloc_get_state.3, malloc_hook.3, malloc_info.3, malloc_stats.3, malloc_trim.3, malloc_usable_size.3, mallopt.3, matherr.3, mblen.3, mbrlen.3, mbrtowc.3, mbsinit.3, mbsnrtowcs.3, mbsrtowcs.3, mbstowcs.3, mbtowc.3, mcheck.3, memccpy.3, memchr.3, memcmp.3, memcpy.3, memfrob.3, memmem.3, memmove.3, mempcpy.3, memset.3, mkdtemp.3, mkfifo.3, mkstemp.3, mktemp.3, modf.3, mpool.3, mq_close.3, mq_getattr.3, mq_notify.3, mq_open.3, mq_receive.3, mq_send.3, mq_unlink.3, mtrace.3, nan.3, newlocale.3, nextafter.3, nextup.3, nl_langinfo.3, ntp_gettime.3, on_exit.3, open_memstream.3, opendir.3, openpty.3, perror.3, popen.3, posix_fallocate.3, posix_madvise.3, posix_memalign.3, posix_openpt.3, posix_spawn.3, pow.3, pow10.3, printf.3, profil.3, psignal.3, pthread_attr_init.3, pthread_attr_setaffinity_np.3, pthread_attr_setdetachstate.3, pthread_attr_setguardsize.3, pthread_attr_setinheritsched.3, pthread_attr_setschedparam.3, pthread_attr_setschedpolicy.3, pthread_attr_setscope.3, pthread_attr_setsigmask_np.3, pthread_attr_setstack.3, pthread_attr_setstackaddr.3, pthread_attr_setstacksize.3, pthread_cancel.3, pthread_cleanup_push.3, pthread_cleanup_push_defer_np.3, pthread_create.3, pthread_detach.3, pthread_equal.3, pthread_exit.3, pthread_getattr_default_np.3, pthread_getattr_np.3, pthread_getcpuclockid.3, pthread_join.3, pthread_kill.3, pthread_kill_other_threads_np.3, pthread_mutex_consistent.3, pthread_mutexattr_getpshared.3, pthread_mutexattr_setrobust.3, pthread_rwlockattr_setkind_np.3, pthread_self.3, pthread_setaffinity_np.3, pthread_setcancelstate.3, pthread_setconcurrency.3, pthread_setname_np.3, pthread_setschedparam.3, pthread_setschedprio.3, pthread_sigmask.3, pthread_sigqueue.3, pthread_spin_init.3, pthread_spin_lock.3, pthread_testcancel.3, pthread_tryjoin_np.3, pthread_yield.3, ptsname.3, putenv.3, putgrent.3, putpwent.3, puts.3, putwchar.3, qecvt.3, qsort.3, raise.3, rand.3, random.3, random_r.3, rcmd.3, re_comp.3, readdir.3, readdir_r.3, realpath.3, regex.3, remainder.3, remove.3, remquo.3, resolver.3, rewinddir.3, rexec.3, rint.3, round.3, rpc.3, rpmatch.3, rtime.3, rtnetlink.3, scalb.3, scalbln.3, scandir.3, scanf.3, sched_getcpu.3, seekdir.3, sem_close.3, sem_destroy.3, sem_getvalue.3, sem_init.3, sem_open.3, sem_post.3, sem_unlink.3, sem_wait.3, setaliasent.3, setbuf.3, setenv.3, setjmp.3, setlocale.3, setlogmask.3, setnetgrent.3, shm_open.3, siginterrupt.3, signbit.3, significand.3, sigpause.3, sigqueue.3, sigset.3, sigsetops.3, sigvec.3, sigwait.3, sin.3, sincos.3, sinh.3, sleep.3, slist.3, sockatmark.3, sqrt.3, stailq.3, statvfs.3, stdarg.3, stdio.3, stdio_ext.3, stpcpy.3, stpncpy.3, strcasecmp.3, strcat.3, strchr.3, strcmp.3, strcoll.3, strcpy.3, strdup.3, strerror.3, strfmon.3, strfromd.3, strfry.3, strftime.3, string.3, strlen.3, strnlen.3, strpbrk.3, strptime.3, strsep.3, strsignal.3, strspn.3, strstr.3, strtod.3, strtoimax.3, strtok.3, strtol.3, strtoul.3, strverscmp.3, strxfrm.3, swab.3, sysconf.3, syslog.3, system.3, sysv_signal.3, tailq.3, tan.3, tanh.3, tcgetpgrp.3, tcgetsid.3, telldir.3, tempnam.3, termios.3, tgamma.3, timegm.3, timeradd.3, tmpfile.3, tmpnam.3, toascii.3, toupper.3, towctrans.3, towlower.3, towupper.3, trunc.3, tsearch.3, ttyname.3, ttyslot.3, tzset.3, ualarm.3, ulimit.3, undocumented.3, ungetwc.3, unlocked_stdio.3, unlockpt.3, updwtmp.3, uselocale.3, usleep.3, wcpcpy.3, wcpncpy.3, wcrtomb.3, wcscasecmp.3, wcscat.3, wcschr.3, wcscmp.3, wcscpy.3, wcscspn.3, wcsdup.3, wcslen.3, wcsncasecmp.3, wcsncat.3, wcsncmp.3, wcsncpy.3, wcsnlen.3, wcsnrtombs.3, wcspbrk.3, wcsrchr.3, wcsrtombs.3, wcsspn.3, wcsstr.3, wcstoimax.3, wcstok.3, wcstombs.3, wcswidth.3, wctob.3, wctomb.3, wctrans.3, wctype.3, wcwidth.3, wmemchr.3, wmemcmp.3, wmemcpy.3, wmemmove.3, wmemset.3, wordexp.3, wprintf.3, xcrypt.3, xdr.3, y0.3, cciss.4, console_codes.4, dsp56k.4, hpsa.4, initrd.4, loop.4, lp.4, msr.4, random.4, rtc.4, smartpqi.4, veth.4, wavelan.4, acct.5, core.5, elf.5, hosts.5, locale.5, proc.5, resolv.conf.5, rpc.5, slabinfo.5, sysfs.5, tmpfs.5, utmp.5, address_families.7, aio.7, attributes.7, bootparam.7, capabilities.7, cgroups.7, complex.7, ddp.7, environ.7, epoll.7, fanotify.7, feature_test_macros.7, hier.7, inode.7, inotify.7, ip.7, ipv6.7, keyrings.7, locale.7, man-pages.7, man.7, math_error.7, mount_namespaces.7, namespaces.7, netdevice.7, netlink.7, numa.7, packet.7, pkeys.7, pthreads.7, queue.7, raw.7, rtnetlink.7, sched.7, session-keyring.7, shm_overview.7, sigevent.7, signal-safety.7, signal.7, sock_diag.7, socket.7, spufs.7, symlink.7, system_data_types.7, tcp.7, time_namespaces.7, udp.7, udplite.7, unicode.7, unix.7, uri.7, user_namespaces.7, vdso.7, vsock.7, x25.7, iconvconfig.8, ld.so.8, ldconfig.8, sln.8, tzselect.8: tstamp
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-03-21 23:15:34 +00:00
|
|
|
.TH SYSTEM_DATA_TYPES 7 2021-03-22 "Linux" "Linux Programmer's Manual"
|
2020-09-17 10:42:59 +00:00
|
|
|
.SH NAME
|
|
|
|
system_data_types \- overview of system data types
|
|
|
|
.SH DESCRIPTION
|
|
|
|
.\" Layout:
|
|
|
|
.\" A list of type names (the struct/union keyword will be omitted).
|
|
|
|
.\" Each entry will have the following parts:
|
2020-09-29 14:22:19 +00:00
|
|
|
.\" * Include (see NOTES)
|
2020-09-17 10:42:59 +00:00
|
|
|
.\"
|
|
|
|
.\" * Definition (no "Definition" header)
|
|
|
|
.\" Only struct/union types will have definition;
|
|
|
|
.\" typedefs will remain opaque.
|
|
|
|
.\"
|
|
|
|
.\" * Description (no "Description" header)
|
|
|
|
.\" A few lines describing the type.
|
|
|
|
.\"
|
2020-10-03 09:28:48 +00:00
|
|
|
.\" * Versions (optional)
|
|
|
|
.\"
|
2020-09-29 14:22:19 +00:00
|
|
|
.\" * Conforming to (see NOTES)
|
2020-09-17 10:42:59 +00:00
|
|
|
.\" Format: CXY and later; POSIX.1-XXXX and later.
|
|
|
|
.\"
|
|
|
|
.\" * Notes (optional)
|
|
|
|
.\"
|
2020-10-01 13:29:04 +00:00
|
|
|
.\" * Bugs (if any)
|
|
|
|
.\"
|
2020-09-17 10:42:59 +00:00
|
|
|
.\" * See also
|
2020-09-18 17:04:40 +00:00
|
|
|
.\"------------------------------------- aiocb ------------------------/
|
|
|
|
.TP
|
|
|
|
.I aiocb
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-18 17:04:40 +00:00
|
|
|
.IR <aio.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 17:04:40 +00:00
|
|
|
.EX
|
|
|
|
struct aiocb {
|
|
|
|
int aio_fildes; /* File descriptor */
|
|
|
|
off_t aio_offset; /* File offset */
|
|
|
|
volatile void *aio_buf; /* Location of buffer */
|
|
|
|
size_t aio_nbytes; /* Length of transfer */
|
|
|
|
int aio_reqprio; /* Request priority offset */
|
|
|
|
struct sigevent aio_sigevent; /* Signal number and value */
|
|
|
|
int aio_lio_opcode;/* Operation to be performed */
|
|
|
|
};
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 21:26:29 +00:00
|
|
|
For further information about this structure, see
|
|
|
|
.BR aio (7).
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-18 17:04:40 +00:00
|
|
|
.BR aio_cancel (3),
|
|
|
|
.BR aio_error (3),
|
|
|
|
.BR aio_fsync (3),
|
|
|
|
.BR aio_read (3),
|
|
|
|
.BR aio_return (3),
|
|
|
|
.BR aio_suspend (3),
|
|
|
|
.BR aio_write (3),
|
|
|
|
.BR lio_listio (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2021-05-23 11:22:06 +00:00
|
|
|
.\"------------------------------------- blkcnt_t ---------------------/
|
|
|
|
.TP
|
|
|
|
.I blkcnt_t
|
|
|
|
.RS
|
|
|
|
.IR Include :
|
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <sys/stat.h> .
|
|
|
|
.PP
|
|
|
|
Used for file block counts.
|
|
|
|
According to POSIX,
|
|
|
|
it shall be a signed integer type.
|
|
|
|
.PP
|
|
|
|
.IR "Conforming to" :
|
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
|
|
|
.IR "See also" :
|
|
|
|
.BR stat (2)
|
|
|
|
.RE
|
2021-05-23 11:22:10 +00:00
|
|
|
.\"------------------------------------- blksize_t --------------------/
|
|
|
|
.TP
|
|
|
|
.I blksize_t
|
|
|
|
.RS
|
|
|
|
.IR Include :
|
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <sys/stat.h> .
|
|
|
|
.PP
|
|
|
|
Used for file block sizes.
|
|
|
|
According to POSIX,
|
|
|
|
it shall be a signed integer type.
|
|
|
|
.PP
|
|
|
|
.IR "Conforming to" :
|
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
|
|
|
.IR "See also" :
|
|
|
|
.BR stat (2)
|
|
|
|
.RE
|
2021-05-23 11:22:08 +00:00
|
|
|
.\"------------------------------------- cc_t -------------------------/
|
|
|
|
.TP
|
|
|
|
.I cc_t
|
|
|
|
.RS
|
|
|
|
.IR Include :
|
|
|
|
.IR <termios.h> .
|
|
|
|
.PP
|
|
|
|
Used for terminal special characters.
|
|
|
|
According to POSIX,
|
|
|
|
it shall be an unsigned integer type.
|
|
|
|
.PP
|
|
|
|
.IR "Conforming to" :
|
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
|
|
|
.IR "See also" :
|
|
|
|
.BR termios (3)
|
|
|
|
.RE
|
2020-10-18 09:49:17 +00:00
|
|
|
.\"------------------------------------- clock_t ----------------------/
|
|
|
|
.TP
|
|
|
|
.I clock_t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-10-18 09:49:17 +00:00
|
|
|
.I <time.h>
|
|
|
|
or
|
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <sys/time.h> .
|
|
|
|
.PP
|
|
|
|
Used for system time in clock ticks or
|
|
|
|
.B CLOCKS_PER_SEC
|
|
|
|
(defined in
|
|
|
|
.IR <time.h> ).
|
|
|
|
According to POSIX,
|
|
|
|
it shall be an integer type or a real-floating type.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-18 09:49:17 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-10-18 09:49:17 +00:00
|
|
|
.BR times (2),
|
|
|
|
.BR clock (3)
|
|
|
|
.RE
|
2020-10-25 21:08:16 +00:00
|
|
|
.\"------------------------------------- clockid_t --------------------/
|
|
|
|
.TP
|
|
|
|
.I clockid_t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-10-25 21:08:16 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <time.h> .
|
|
|
|
.PP
|
|
|
|
Used for clock ID type in the clock and timer functions.
|
|
|
|
According to POSIX,
|
|
|
|
it shall be defined as an arithmetic type.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-25 21:08:16 +00:00
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-10-25 21:08:16 +00:00
|
|
|
.BR clock_adjtime (2),
|
|
|
|
.BR clock_getres (2),
|
|
|
|
.BR clock_nanosleep (2),
|
|
|
|
.BR timer_create (2),
|
|
|
|
.BR clock_getcpuclockid (3)
|
|
|
|
.RE
|
2020-10-26 22:50:08 +00:00
|
|
|
.\"------------------------------------- dev_t ------------------------/
|
|
|
|
.TP
|
|
|
|
.I dev_t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-10-26 22:50:08 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <sys/stat.h> .
|
|
|
|
.PP
|
|
|
|
Used for device IDs.
|
|
|
|
According to POSIX,
|
|
|
|
it shall be an integer type.
|
2020-10-27 06:06:15 +00:00
|
|
|
For further details of this type, see
|
|
|
|
.BR makedev (3).
|
2020-10-26 22:50:08 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-26 22:50:08 +00:00
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-10-26 22:50:08 +00:00
|
|
|
.BR mknod (2),
|
2020-10-27 06:06:15 +00:00
|
|
|
.BR stat (2)
|
2020-10-26 22:50:08 +00:00
|
|
|
.RE
|
2020-09-24 10:13:04 +00:00
|
|
|
.\"------------------------------------- div_t ------------------------/
|
|
|
|
.TP
|
|
|
|
.I div_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-24 10:13:04 +00:00
|
|
|
.IR <stdlib.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-24 10:13:04 +00:00
|
|
|
.EX
|
|
|
|
typedef struct {
|
|
|
|
int quot; /* Quotient */
|
|
|
|
int rem; /* Remainder */
|
|
|
|
} div_t;
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-24 10:13:04 +00:00
|
|
|
It is the type of the value returned by the
|
|
|
|
.BR div (3)
|
|
|
|
function.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-24 10:13:04 +00:00
|
|
|
.BR div (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-25 11:22:18 +00:00
|
|
|
.\"------------------------------------- double_t ---------------------/
|
|
|
|
.TP
|
|
|
|
.I double_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-25 11:22:18 +00:00
|
|
|
.IR <math.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-25 11:22:18 +00:00
|
|
|
The implementation's most efficient floating type at least as wide as
|
|
|
|
.IR double .
|
|
|
|
Its type depends on the value of the macro
|
2020-09-25 11:58:47 +00:00
|
|
|
.B FLT_EVAL_METHOD
|
|
|
|
(defined in
|
|
|
|
.IR <float.h> ):
|
2020-09-25 11:22:18 +00:00
|
|
|
.TP
|
|
|
|
0
|
|
|
|
.I double_t
|
|
|
|
is
|
|
|
|
.IR double .
|
|
|
|
.TP
|
|
|
|
1
|
|
|
|
.I double_t
|
|
|
|
is
|
|
|
|
.IR double .
|
|
|
|
.TP
|
|
|
|
2
|
|
|
|
.I double_t
|
|
|
|
is
|
|
|
|
.IR "long double" .
|
2020-09-25 11:58:47 +00:00
|
|
|
.PP
|
2020-09-25 11:22:18 +00:00
|
|
|
For other values of
|
|
|
|
.BR FLT_EVAL_METHOD ,
|
|
|
|
the type of
|
|
|
|
.I double_t
|
|
|
|
is implementation-defined.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-09-25 11:22:18 +00:00
|
|
|
.I float_t
|
|
|
|
type in this page.
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-10-09 08:42:44 +00:00
|
|
|
.\"------------------------------------- fd_set -----------------------/
|
|
|
|
.TP
|
|
|
|
.I fd_set
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-10-09 08:42:44 +00:00
|
|
|
.IR <sys/select.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <sys/time.h> .
|
|
|
|
.PP
|
|
|
|
A structure type that can represent a set of file descriptors.
|
|
|
|
According to POSIX,
|
|
|
|
the maximum number of file descriptors in an
|
|
|
|
.I fd_set
|
|
|
|
structure is the value of the macro
|
|
|
|
.BR FD_SETSIZE .
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-09 08:42:44 +00:00
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-10-09 08:42:44 +00:00
|
|
|
.BR select (2)
|
|
|
|
.RE
|
2020-09-21 15:25:16 +00:00
|
|
|
.\"------------------------------------- fenv_t -----------------------/
|
|
|
|
.TP
|
|
|
|
.I fenv_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-21 15:25:16 +00:00
|
|
|
.IR <fenv.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-23 08:38:45 +00:00
|
|
|
This type represents the entire floating-point environment,
|
|
|
|
including control modes and status flags; for further details, see
|
|
|
|
.BR fenv (3).
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-21 15:25:16 +00:00
|
|
|
.BR fenv (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-23 13:17:06 +00:00
|
|
|
.\"------------------------------------- fexcept_t --------------------/
|
|
|
|
.TP
|
|
|
|
.I fexcept_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-23 13:17:06 +00:00
|
|
|
.IR <fenv.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-23 13:17:06 +00:00
|
|
|
This type represents the floating-point status flags collectively;
|
|
|
|
for further details see
|
|
|
|
.BR fenv (3).
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-23 13:17:06 +00:00
|
|
|
.BR fenv (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-29 13:33:03 +00:00
|
|
|
.\"------------------------------------- FILE -------------------------/
|
|
|
|
.TP
|
|
|
|
.I FILE
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <stdio.h> .
|
|
|
|
Alternatively,
|
2020-09-29 13:33:03 +00:00
|
|
|
.IR <wchar.h> .
|
|
|
|
.PP
|
|
|
|
An object type used for streams.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-29 13:33:03 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-29 13:33:03 +00:00
|
|
|
.BR fclose (3),
|
|
|
|
.BR flockfile (3),
|
|
|
|
.BR fopen (3),
|
|
|
|
.BR fprintf (3),
|
|
|
|
.BR fread (3),
|
|
|
|
.BR fscanf (3),
|
|
|
|
.BR stdin (3),
|
|
|
|
.BR stdio (3)
|
|
|
|
.RE
|
2020-09-25 11:19:23 +00:00
|
|
|
.\"------------------------------------- float_t ----------------------/
|
|
|
|
.TP
|
|
|
|
.I float_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-25 11:19:23 +00:00
|
|
|
.IR <math.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-25 11:19:23 +00:00
|
|
|
The implementation's most efficient floating type at least as wide as
|
|
|
|
.IR float .
|
|
|
|
Its type depends on the value of the macro
|
2020-09-25 11:58:47 +00:00
|
|
|
.B FLT_EVAL_METHOD
|
|
|
|
(defined in
|
|
|
|
.IR <float.h> ):
|
2020-09-25 11:19:23 +00:00
|
|
|
.TP
|
|
|
|
0
|
|
|
|
.I float_t
|
|
|
|
is
|
|
|
|
.IR float .
|
|
|
|
.TP
|
|
|
|
1
|
|
|
|
.I float_t
|
|
|
|
is
|
|
|
|
.IR double .
|
|
|
|
.TP
|
|
|
|
2
|
|
|
|
.I float_t
|
|
|
|
is
|
|
|
|
.IR "long double" .
|
2020-09-25 11:58:47 +00:00
|
|
|
.PP
|
2020-09-25 11:19:23 +00:00
|
|
|
For other values of
|
|
|
|
.BR FLT_EVAL_METHOD ,
|
|
|
|
the type of
|
|
|
|
.I float_t
|
|
|
|
is implementation-defined.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-09-25 11:19:23 +00:00
|
|
|
.I double_t
|
|
|
|
type in this page.
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-23 13:17:06 +00:00
|
|
|
.\"------------------------------------- gid_t ------------------------/
|
2020-09-22 08:28:08 +00:00
|
|
|
.TP
|
|
|
|
.I gid_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <grp.h> ,
|
|
|
|
.IR <pwd.h> ,
|
|
|
|
.IR <signal.h> ,
|
|
|
|
.IR <stropts.h> ,
|
|
|
|
.IR <sys/ipc.h> ,
|
|
|
|
.IR <sys/stat.h> ,
|
2020-09-22 08:28:08 +00:00
|
|
|
or
|
|
|
|
.IR <unistd.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-22 08:28:08 +00:00
|
|
|
A type used to hold group IDs.
|
|
|
|
According to POSIX,
|
|
|
|
this shall be an integer type.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-22 08:28:08 +00:00
|
|
|
.BR chown (2),
|
|
|
|
.BR getgid (2),
|
|
|
|
.BR getegid (2),
|
|
|
|
.BR getgroups (2),
|
|
|
|
.BR getresgid (2),
|
2021-05-09 21:39:30 +00:00
|
|
|
.BR getgrnam (3),
|
2020-09-22 08:28:08 +00:00
|
|
|
.BR credentials (7)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-22 08:38:42 +00:00
|
|
|
.\"------------------------------------- id_t -------------------------/
|
|
|
|
.TP
|
|
|
|
.I id_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
2020-09-22 08:38:42 +00:00
|
|
|
.IR <sys/resource.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-22 08:38:42 +00:00
|
|
|
A type used to hold a general identifier.
|
|
|
|
According to POSIX,
|
|
|
|
this shall be an integer type that can be used to contain a
|
2020-09-22 08:58:14 +00:00
|
|
|
.IR pid_t ,
|
|
|
|
.IR uid_t ,
|
2020-09-22 08:38:42 +00:00
|
|
|
or
|
2020-09-22 08:58:14 +00:00
|
|
|
.IR gid_t .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-22 08:38:42 +00:00
|
|
|
.BR getpriority (2),
|
|
|
|
.BR waitid (2)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-24 09:58:54 +00:00
|
|
|
.\"------------------------------------- imaxdiv_t --------------------/
|
|
|
|
.TP
|
|
|
|
.I imaxdiv_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-24 09:58:54 +00:00
|
|
|
.IR <inttypes.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-24 09:58:54 +00:00
|
|
|
.EX
|
|
|
|
typedef struct {
|
|
|
|
intmax_t quot; /* Quotient */
|
|
|
|
intmax_t rem; /* Remainder */
|
|
|
|
} imaxdiv_t;
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-24 09:58:54 +00:00
|
|
|
It is the type of the value returned by the
|
2020-09-25 07:31:32 +00:00
|
|
|
.BR imaxdiv (3)
|
2020-09-24 09:58:54 +00:00
|
|
|
function.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-24 09:58:54 +00:00
|
|
|
.BR imaxdiv (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-29 10:30:23 +00:00
|
|
|
.\"------------------------------------- intmax_t ---------------------/
|
|
|
|
.TP
|
|
|
|
.I intmax_t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 10:30:23 +00:00
|
|
|
.IR <stdint.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <inttypes.h> .
|
|
|
|
.PP
|
|
|
|
A signed integer type
|
|
|
|
capable of representing any value of any signed integer type
|
|
|
|
supported by the implementation.
|
|
|
|
According to the C language standard, it shall be
|
|
|
|
capable of storing values in the range
|
|
|
|
.RB [ INTMAX_MIN ,
|
|
|
|
.BR INTMAX_MAX ].
|
|
|
|
.PP
|
|
|
|
The macro
|
2020-09-29 11:48:52 +00:00
|
|
|
.BR INTMAX_C ()
|
2020-09-29 10:30:23 +00:00
|
|
|
.\" TODO: Document INT*_C(3)
|
|
|
|
expands its argument to an integer constant of type
|
|
|
|
.IR intmax_t .
|
|
|
|
.PP
|
|
|
|
The length modifier for
|
|
|
|
.I intmax_t
|
|
|
|
for the
|
|
|
|
.BR printf (3)
|
|
|
|
and the
|
|
|
|
.BR scanf (3)
|
|
|
|
families of functions is
|
|
|
|
.BR j ;
|
|
|
|
resulting commonly in
|
|
|
|
.B %jd
|
|
|
|
or
|
|
|
|
.B %ji
|
|
|
|
for printing
|
|
|
|
.I intmax_t
|
|
|
|
values.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 13:29:04 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Bugs :
|
2020-09-29 10:30:23 +00:00
|
|
|
.I intmax_t
|
|
|
|
is not large enough to represent values of type
|
|
|
|
.I __int128
|
|
|
|
in implementations where
|
|
|
|
.I __int128
|
|
|
|
is defined and
|
|
|
|
.I long long
|
|
|
|
is less than 128 bits wide.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-09-29 10:30:23 +00:00
|
|
|
.I uintmax_t
|
|
|
|
type in this page.
|
|
|
|
.RE
|
2020-09-29 10:30:27 +00:00
|
|
|
.\"------------------------------------- intN_t -----------------------/
|
|
|
|
.TP
|
|
|
|
.IR int N _t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 10:30:27 +00:00
|
|
|
.IR <stdint.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <inttypes.h> .
|
|
|
|
.PP
|
2020-10-01 10:15:47 +00:00
|
|
|
.IR int8_t ,
|
|
|
|
.IR int16_t ,
|
|
|
|
.IR int32_t ,
|
|
|
|
.I int64_t
|
2020-09-29 10:30:27 +00:00
|
|
|
.PP
|
|
|
|
A signed integer type
|
|
|
|
of a fixed width of exactly N bits,
|
|
|
|
N being the value specified in its type name.
|
|
|
|
According to the C language standard, they shall be
|
|
|
|
capable of storing values in the range
|
|
|
|
.RB [ INT N _MIN ,
|
|
|
|
.BR INT N _MAX ],
|
|
|
|
substituting N by the appropriate number.
|
|
|
|
.PP
|
|
|
|
According to POSIX,
|
2020-10-01 10:15:47 +00:00
|
|
|
.IR int8_t ,
|
2020-10-03 20:11:23 +00:00
|
|
|
.IR int16_t ,
|
2020-09-29 10:30:27 +00:00
|
|
|
and
|
|
|
|
.I int32_t
|
|
|
|
are required;
|
|
|
|
.I int64_t
|
|
|
|
is only required in implementations that provide integer types
|
|
|
|
with width 64;
|
|
|
|
and all other types of this form are optional.
|
|
|
|
.PP
|
|
|
|
The length modifiers for the
|
|
|
|
.IR int N _t
|
|
|
|
types for the
|
|
|
|
.BR printf (3)
|
|
|
|
family of functions
|
|
|
|
are expanded by macros of the forms
|
|
|
|
.BR PRId N
|
|
|
|
and
|
|
|
|
.BR PRIi N
|
|
|
|
(defined in
|
|
|
|
.IR <inttypes.h> );
|
|
|
|
resulting for example in
|
|
|
|
.B %"PRId64"
|
|
|
|
or
|
|
|
|
.B %"PRIi64"
|
|
|
|
for printing
|
|
|
|
.I int64_t
|
|
|
|
values.
|
|
|
|
The length modifiers for the
|
|
|
|
.IR int N _t
|
|
|
|
types for the
|
|
|
|
.BR scanf (3)
|
|
|
|
family of functions
|
|
|
|
are expanded by macros of the forms
|
|
|
|
.BR SCNd N
|
|
|
|
and
|
|
|
|
.BR SCNi N,
|
|
|
|
(defined in
|
|
|
|
.IR <inttypes.h> );
|
|
|
|
resulting for example in
|
|
|
|
.B %"SCNd8"
|
|
|
|
or
|
|
|
|
.B %"SCNi8"
|
|
|
|
for scanning
|
|
|
|
.I int8_t
|
|
|
|
values.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-29 10:30:27 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-09-29 10:30:27 +00:00
|
|
|
.IR intmax_t ,
|
|
|
|
.IR uint N _t ,
|
|
|
|
and
|
2020-10-03 20:02:37 +00:00
|
|
|
.I uintmax_t
|
2020-09-29 10:30:27 +00:00
|
|
|
types in this page.
|
|
|
|
.RE
|
2020-10-01 10:15:57 +00:00
|
|
|
.\"------------------------------------- intptr_t ---------------------/
|
|
|
|
.TP
|
|
|
|
.I intptr_t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-10-01 10:15:57 +00:00
|
|
|
.IR <stdint.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <inttypes.h> .
|
|
|
|
.PP
|
|
|
|
A signed integer type
|
|
|
|
such that any valid
|
|
|
|
.RI ( "void *" )
|
|
|
|
value can be converted to this type and back.
|
|
|
|
According to the C language standard, it shall be
|
|
|
|
capable of storing values in the range
|
|
|
|
.RB [ INTPTR_MIN ,
|
|
|
|
.BR INTPTR_MAX ].
|
|
|
|
.PP
|
|
|
|
The length modifier for
|
|
|
|
.I intptr_t
|
|
|
|
for the
|
|
|
|
.BR printf (3)
|
|
|
|
family of functions
|
|
|
|
is expanded by the macros
|
|
|
|
.B PRIdPTR
|
|
|
|
and
|
|
|
|
.B PRIiPTR
|
|
|
|
(defined in
|
|
|
|
.IR <inttypes.h> );
|
|
|
|
resulting commonly in
|
|
|
|
.B %"PRIdPTR"
|
|
|
|
or
|
|
|
|
.B %"PRIiPTR"
|
|
|
|
for printing
|
|
|
|
.I intptr_t
|
|
|
|
values.
|
|
|
|
The length modifier for
|
|
|
|
.I intptr_t
|
|
|
|
for the
|
|
|
|
.BR scanf (3)
|
|
|
|
family of functions
|
|
|
|
is expanded by the macros
|
|
|
|
.B SCNdPTR
|
|
|
|
and
|
|
|
|
.B SCNiPTR,
|
|
|
|
(defined in
|
|
|
|
.IR <inttypes.h> );
|
|
|
|
resulting commonly in
|
|
|
|
.B %"SCNdPTR"
|
|
|
|
or
|
|
|
|
.B %"SCNiPTR"
|
|
|
|
for scanning
|
|
|
|
.I intptr_t
|
|
|
|
values.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:57 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-10-01 10:15:57 +00:00
|
|
|
.I uintptr_t
|
|
|
|
and
|
|
|
|
.I void *
|
|
|
|
types in this page.
|
|
|
|
.RE
|
2020-09-25 07:31:33 +00:00
|
|
|
.\"------------------------------------- lconv ------------------------/
|
|
|
|
.TP
|
|
|
|
.I lconv
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-25 07:31:33 +00:00
|
|
|
.IR <locale.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-25 07:31:33 +00:00
|
|
|
.EX
|
|
|
|
struct lconv { /* Values in the "C" locale: */
|
|
|
|
char *decimal_point; /* "." */
|
|
|
|
char *thousands_sep; /* "" */
|
|
|
|
char *grouping; /* "" */
|
|
|
|
char *mon_decimal_point; /* "" */
|
|
|
|
char *mon_thousands_sep; /* "" */
|
|
|
|
char *mon_grouping; /* "" */
|
|
|
|
char *positive_sign; /* "" */
|
|
|
|
char *negative_sign; /* "" */
|
|
|
|
char *currency_symbol; /* "" */
|
|
|
|
char frac_digits; /* CHAR_MAX */
|
|
|
|
char p_cs_precedes; /* CHAR_MAX */
|
|
|
|
char n_cs_precedes; /* CHAR_MAX */
|
|
|
|
char p_sep_by_space; /* CHAR_MAX */
|
|
|
|
char n_sep_by_space; /* CHAR_MAX */
|
|
|
|
char p_sign_posn; /* CHAR_MAX */
|
|
|
|
char n_sign_posn; /* CHAR_MAX */
|
|
|
|
char *int_curr_symbol; /* "" */
|
|
|
|
char int_frac_digits; /* CHAR_MAX */
|
|
|
|
char int_p_cs_precedes; /* CHAR_MAX */
|
|
|
|
char int_n_cs_precedes; /* CHAR_MAX */
|
|
|
|
char int_p_sep_by_space; /* CHAR_MAX */
|
|
|
|
char int_n_sep_by_space; /* CHAR_MAX */
|
|
|
|
char int_p_sign_posn; /* CHAR_MAX */
|
|
|
|
char int_n_sign_posn; /* CHAR_MAX */
|
|
|
|
};
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-25 07:31:33 +00:00
|
|
|
Contains members related to the formatting of numeric values.
|
|
|
|
In the "C" locale, its members have the values
|
|
|
|
shown in the comments above.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C11 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-25 07:31:33 +00:00
|
|
|
.BR setlocale (3),
|
|
|
|
.BR localeconv (3),
|
2021-05-09 21:39:30 +00:00
|
|
|
.BR charsets (7),
|
2020-09-25 07:31:33 +00:00
|
|
|
.BR locale (7)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-24 10:13:06 +00:00
|
|
|
.\"------------------------------------- ldiv_t -----------------------/
|
|
|
|
.TP
|
|
|
|
.I ldiv_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-24 10:13:06 +00:00
|
|
|
.IR <stdlib.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-24 10:13:06 +00:00
|
|
|
.EX
|
|
|
|
typedef struct {
|
|
|
|
long quot; /* Quotient */
|
|
|
|
long rem; /* Remainder */
|
|
|
|
} ldiv_t;
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-24 10:13:06 +00:00
|
|
|
It is the type of the value returned by the
|
|
|
|
.BR ldiv (3)
|
|
|
|
function.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-24 10:13:06 +00:00
|
|
|
.BR ldiv (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-24 10:13:08 +00:00
|
|
|
.\"------------------------------------- lldiv_t ----------------------/
|
|
|
|
.TP
|
|
|
|
.I lldiv_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-24 10:13:08 +00:00
|
|
|
.IR <stdlib.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-24 10:13:08 +00:00
|
|
|
.EX
|
|
|
|
typedef struct {
|
|
|
|
long long quot; /* Quotient */
|
|
|
|
long long rem; /* Remainder */
|
|
|
|
} lldiv_t;
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-24 10:13:08 +00:00
|
|
|
It is the type of the value returned by the
|
|
|
|
.BR lldiv (3)
|
|
|
|
function.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-24 10:13:08 +00:00
|
|
|
.BR lldiv (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2021-05-23 11:22:12 +00:00
|
|
|
.\"------------------------------------- mode_t -----------------------/
|
|
|
|
.TP
|
|
|
|
.I mode_t
|
|
|
|
.RS
|
|
|
|
.IR Include :
|
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <fcntl.h> ,
|
|
|
|
.IR <ndbm.h> ,
|
|
|
|
.IR <spawn.h> ,
|
|
|
|
.IR <sys/ipc.h> ,
|
|
|
|
.IR <sys/mman.h> ,
|
|
|
|
or
|
|
|
|
.IR <sys/stat.h> .
|
|
|
|
.PP
|
2021-06-09 21:37:34 +00:00
|
|
|
Used for some file attributes (e.g., file mode).
|
2021-05-23 11:22:12 +00:00
|
|
|
According to POSIX,
|
|
|
|
it shall be an integer type.
|
|
|
|
.PP
|
|
|
|
.IR "Conforming to" :
|
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
|
|
|
.IR "See also" :
|
|
|
|
.BR chmod (2),
|
|
|
|
.BR mkdir (2),
|
|
|
|
.BR open (2),
|
|
|
|
.BR stat (2),
|
|
|
|
.BR umask (2)
|
|
|
|
.RE
|
2020-12-31 19:14:57 +00:00
|
|
|
.\"------------------------------------- off64_t ----------------------/
|
|
|
|
.TP
|
|
|
|
.I off64_t
|
|
|
|
.RS
|
|
|
|
.IR Include :
|
|
|
|
.IR <sys/types.h> .
|
|
|
|
.PP
|
|
|
|
Used for file sizes.
|
|
|
|
It is a 64-bit signed integer type.
|
|
|
|
.PP
|
|
|
|
.IR "Conforming to" :
|
|
|
|
Present in glibc.
|
|
|
|
It is not standardized by the C language standard nor POSIX.
|
|
|
|
.PP
|
|
|
|
.IR Notes :
|
|
|
|
The feature test macro
|
|
|
|
.B _LARGEFILE64_SOURCE
|
|
|
|
has to be defined for this type to be available.
|
|
|
|
.PP
|
|
|
|
.IR "See also" :
|
|
|
|
.BR copy_file_range (2),
|
|
|
|
.BR readahead (2),
|
|
|
|
.BR sync_file_range (2),
|
|
|
|
.BR lseek64 (3),
|
|
|
|
.BR feature_test_macros (7)
|
|
|
|
.PP
|
|
|
|
See also the
|
|
|
|
.\" .I loff_t
|
|
|
|
.\" and
|
|
|
|
.I off_t
|
|
|
|
type in this page.
|
|
|
|
.RE
|
2020-10-05 22:12:47 +00:00
|
|
|
.\"------------------------------------- off_t ------------------------/
|
|
|
|
.TP
|
|
|
|
.I off_t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-10-05 22:12:47 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <aio.h> ,
|
|
|
|
.IR <fcntl.h> ,
|
|
|
|
.IR <stdio.h> ,
|
|
|
|
.IR <sys/mman.h> ,
|
|
|
|
.IR <sys/stat.h.h> ,
|
|
|
|
or
|
|
|
|
.IR <unistd.h> .
|
|
|
|
.PP
|
|
|
|
Used for file sizes.
|
|
|
|
According to POSIX,
|
|
|
|
this shall be a signed integer type.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Versions :
|
2020-10-05 22:12:47 +00:00
|
|
|
.I <aio.h>
|
|
|
|
and
|
|
|
|
.I <stdio.h>
|
|
|
|
define
|
|
|
|
.I off_t
|
|
|
|
since POSIX.1-2008.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-05 22:12:47 +00:00
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 16:34:55 +00:00
|
|
|
.IR Notes :
|
|
|
|
On some architectures,
|
|
|
|
the width of this type can be controlled with the feature test macro
|
|
|
|
.BR _FILE_OFFSET_BITS .
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-10-07 06:48:03 +00:00
|
|
|
.\" .BR fallocate (2),
|
2020-10-05 22:12:47 +00:00
|
|
|
.BR lseek (2),
|
|
|
|
.BR mmap (2),
|
2020-10-07 06:48:03 +00:00
|
|
|
.\" .BR mmap2 (2),
|
2020-10-05 22:12:47 +00:00
|
|
|
.BR posix_fadvise (2),
|
|
|
|
.BR pread (2),
|
2020-10-07 06:48:03 +00:00
|
|
|
.\" .BR preadv (2),
|
2020-10-05 22:12:47 +00:00
|
|
|
.BR truncate (2),
|
|
|
|
.BR fseeko (3),
|
2020-10-07 06:48:03 +00:00
|
|
|
.\" .BR getdirentries (3),
|
2020-10-05 22:12:47 +00:00
|
|
|
.BR lockf (3),
|
2020-10-27 16:34:55 +00:00
|
|
|
.BR posix_fallocate (3),
|
|
|
|
.BR feature_test_macros (7)
|
2020-12-31 19:14:57 +00:00
|
|
|
.PP
|
|
|
|
See also the
|
|
|
|
.\" .I loff_t
|
|
|
|
.\" and
|
|
|
|
.I off64_t
|
|
|
|
type in this page.
|
2020-10-05 22:12:47 +00:00
|
|
|
.RE
|
2020-09-22 07:51:41 +00:00
|
|
|
.\"------------------------------------- pid_t ------------------------/
|
|
|
|
.TP
|
|
|
|
.I pid_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <fcntl.h> ,
|
|
|
|
.IR <sched.h> ,
|
|
|
|
.IR <signal.h> ,
|
|
|
|
.IR <spawn.h> ,
|
|
|
|
.IR <sys/msg.h> ,
|
|
|
|
.IR <sys/sem.h> ,
|
|
|
|
.IR <sys/shm.h> ,
|
|
|
|
.IR <sys/wait.h> ,
|
|
|
|
.IR <termios.h> ,
|
|
|
|
.IR <time.h> ,
|
|
|
|
.IR <unistd.h> ,
|
2020-09-22 07:51:41 +00:00
|
|
|
or
|
|
|
|
.IR <utmpx.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-22 07:51:41 +00:00
|
|
|
This type is used for storing process IDs, process group IDs, and session IDs.
|
|
|
|
According to POSIX, it shall be a signed integer type,
|
|
|
|
and the implementation shall support one or more programming environments
|
|
|
|
where the width of
|
|
|
|
.I pid_t
|
|
|
|
is no greater than the width of the type
|
|
|
|
.IR long .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-22 07:51:41 +00:00
|
|
|
.BR fork (2),
|
|
|
|
.BR getpid (2),
|
|
|
|
.BR getppid (2),
|
|
|
|
.BR getsid (2),
|
|
|
|
.BR gettid (2),
|
|
|
|
.BR getpgid (2),
|
|
|
|
.BR kill (2),
|
|
|
|
.BR pidfd_open (2),
|
|
|
|
.BR sched_setscheduler (2),
|
|
|
|
.BR waitpid (2),
|
|
|
|
.BR sigqueue (3),
|
|
|
|
.BR credentials (7),
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- ptrdiff_t --------------------/
|
2020-09-17 10:42:59 +00:00
|
|
|
.TP
|
2020-09-18 12:04:40 +00:00
|
|
|
.I ptrdiff_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-18 13:29:42 +00:00
|
|
|
.IR <stddef.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 12:04:40 +00:00
|
|
|
Used for a count of elements, and array indices.
|
|
|
|
It is the result of subtracting two pointers.
|
|
|
|
According to the C language standard, it shall be a signed integer type
|
|
|
|
capable of storing values in the range
|
2020-09-25 08:03:30 +00:00
|
|
|
.RB [ PTRDIFF_MIN ,
|
2020-09-18 12:04:40 +00:00
|
|
|
.BR PTRDIFF_MAX ].
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-20 18:14:08 +00:00
|
|
|
The length modifier for
|
|
|
|
.I ptrdiff_t
|
|
|
|
for the
|
|
|
|
.BR printf (3)
|
|
|
|
and the
|
|
|
|
.BR scanf (3)
|
|
|
|
families of functions is
|
|
|
|
.BR t ;
|
|
|
|
resulting commonly in
|
|
|
|
.B %td
|
|
|
|
or
|
|
|
|
.B %ti
|
|
|
|
for printing
|
|
|
|
.I ptrdiff_t
|
|
|
|
values.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-09-18 12:04:40 +00:00
|
|
|
.I size_t
|
|
|
|
and
|
|
|
|
.I ssize_t
|
|
|
|
types in this page.
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-10-11 11:15:25 +00:00
|
|
|
.\"------------------------------------- regex_t ----------------------/
|
|
|
|
.TP
|
|
|
|
.I regex_t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-10-11 11:15:25 +00:00
|
|
|
.IR <regex.h> .
|
|
|
|
.PP
|
|
|
|
.EX
|
|
|
|
typedef struct {
|
2020-12-23 13:10:05 +00:00
|
|
|
size_t re_nsub; /* Number of parenthesized subexpressions */
|
2020-10-11 11:15:25 +00:00
|
|
|
} regex_t;
|
|
|
|
.EE
|
|
|
|
.PP
|
|
|
|
This is a structure type used in regular expression matching.
|
|
|
|
It holds a compiled regular expression, compiled with
|
2020-10-18 13:04:49 +00:00
|
|
|
.BR regcomp (3).
|
2020-10-11 11:15:25 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-11 11:15:25 +00:00
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-10-11 11:15:25 +00:00
|
|
|
.BR regex (3)
|
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- regmatch_t -------------------/
|
2020-09-18 12:04:40 +00:00
|
|
|
.TP
|
2020-09-18 13:29:43 +00:00
|
|
|
.I regmatch_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-18 13:29:43 +00:00
|
|
|
.IR <regex.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 13:29:43 +00:00
|
|
|
.EX
|
|
|
|
typedef struct {
|
|
|
|
regoff_t rm_so; /* Byte offset from start of string
|
2020-09-18 22:16:50 +00:00
|
|
|
to start of substring */
|
|
|
|
regoff_t rm_eo; /* Byte offset from start of string of
|
|
|
|
the first character after the end of
|
|
|
|
substring */
|
2020-09-18 13:29:43 +00:00
|
|
|
} regmatch_t;
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-22 07:18:41 +00:00
|
|
|
This is a structure type used in regular expression matching.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-18 13:29:43 +00:00
|
|
|
.BR regexec (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- regoff_t ---------------------/
|
2020-09-18 13:29:43 +00:00
|
|
|
.TP
|
2020-09-18 12:45:53 +00:00
|
|
|
.I regoff_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-18 13:29:42 +00:00
|
|
|
.IR <regex.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 12:45:53 +00:00
|
|
|
According to POSIX, it shall be a signed integer type
|
|
|
|
capable of storing the largest value that can be stored in either a
|
|
|
|
.I ptrdiff_t
|
|
|
|
type or a
|
|
|
|
.I ssize_t
|
|
|
|
type.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Versions :
|
2020-10-01 10:15:46 +00:00
|
|
|
Prior to POSIX.1-2008, the type was capable of storing
|
2020-09-18 12:45:53 +00:00
|
|
|
the largest value that can be stored in either an
|
|
|
|
.I off_t
|
|
|
|
type or a
|
|
|
|
.I ssize_t
|
|
|
|
type.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-03 09:28:48 +00:00
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-09-18 13:29:43 +00:00
|
|
|
.I regmatch_t
|
|
|
|
structure and the
|
2020-09-18 12:45:53 +00:00
|
|
|
.I ptrdiff_t
|
|
|
|
and
|
|
|
|
.I ssize_t
|
|
|
|
types in this page.
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- sigevent ---------------------/
|
2020-09-18 12:45:53 +00:00
|
|
|
.TP
|
2020-09-18 17:04:37 +00:00
|
|
|
.I sigevent
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <signal.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <aio.h> ,
|
|
|
|
.IR <mqueue.h> ,
|
2020-09-18 17:04:37 +00:00
|
|
|
or
|
|
|
|
.IR <time.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 17:04:37 +00:00
|
|
|
.EX
|
|
|
|
struct sigevent {
|
|
|
|
int sigev_notify; /* Notification type */
|
|
|
|
int sigev_signo; /* Signal number */
|
|
|
|
union sigval sigev_value; /* Signal value */
|
|
|
|
void (*sigev_notify_function)(union sigval);
|
|
|
|
/* Notification function */
|
|
|
|
pthread_attr_t *sigev_notify_attributes;
|
|
|
|
/* Notification attributes */
|
|
|
|
};
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 21:08:28 +00:00
|
|
|
For further details about this type, see
|
|
|
|
.BR sigevent (7).
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Versions :
|
2020-09-18 17:04:37 +00:00
|
|
|
.I <aio.h>
|
|
|
|
and
|
|
|
|
.I <time.h>
|
|
|
|
define
|
|
|
|
.I sigevent
|
|
|
|
since POSIX.1-2008.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-03 09:28:48 +00:00
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-18 17:04:37 +00:00
|
|
|
.BR timer_create (2),
|
|
|
|
.BR getaddrinfo_a (3),
|
|
|
|
.BR lio_listio (3),
|
|
|
|
.BR mq_notify (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 17:04:40 +00:00
|
|
|
See also the
|
|
|
|
.I aiocb
|
|
|
|
structure in this page.
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-20 18:05:51 +00:00
|
|
|
.\"------------------------------------- siginfo_t --------------------/
|
|
|
|
.TP
|
|
|
|
.I siginfo_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <signal.h> .
|
|
|
|
Alternatively,
|
2020-09-20 18:05:51 +00:00
|
|
|
.IR <sys/wait.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-20 18:05:51 +00:00
|
|
|
.EX
|
|
|
|
typedef struct {
|
2020-09-20 20:05:10 +00:00
|
|
|
int si_signo; /* Signal number */
|
|
|
|
int si_code; /* Signal code */
|
|
|
|
pid_t si_pid; /* Sending process ID */
|
|
|
|
uid_t si_uid; /* Real user ID of sending process */
|
|
|
|
void *si_addr; /* Address of faulting instruction */
|
|
|
|
int si_status; /* Exit value or signal */
|
|
|
|
union sigval si_value; /* Signal value */
|
2020-09-20 18:05:51 +00:00
|
|
|
} siginfo_t;
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-20 20:07:11 +00:00
|
|
|
Information associated with a signal.
|
|
|
|
For further details on this structure
|
|
|
|
(including additional, Linux-specific fields), see
|
|
|
|
.BR sigaction (2).
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-20 18:05:51 +00:00
|
|
|
.BR pidfd_send_signal (2),
|
|
|
|
.BR rt_sigqueueinfo (2),
|
|
|
|
.BR sigaction (2),
|
|
|
|
.BR sigwaitinfo (2),
|
|
|
|
.BR psiginfo (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-22 07:30:31 +00:00
|
|
|
.\"------------------------------------- sigset_t ---------------------/
|
|
|
|
.TP
|
|
|
|
.I sigset_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <signal.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <spawn.h> ,
|
2020-09-22 07:30:31 +00:00
|
|
|
or
|
|
|
|
.IR <sys/select.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-22 07:30:31 +00:00
|
|
|
This is a type that represents a set of signals.
|
|
|
|
According to POSIX, this shall be an integer or structure type.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-22 07:30:31 +00:00
|
|
|
.BR epoll_pwait (2),
|
|
|
|
.BR ppoll (2),
|
|
|
|
.BR pselect (2),
|
|
|
|
.BR sigaction (2),
|
|
|
|
.BR signalfd (2),
|
|
|
|
.BR sigpending (2),
|
|
|
|
.BR sigprocmask (2),
|
|
|
|
.BR sigsuspend (2),
|
|
|
|
.BR sigwaitinfo (2),
|
|
|
|
.BR signal (7)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- sigval -----------------------/
|
2020-09-18 17:04:37 +00:00
|
|
|
.TP
|
2020-09-17 10:42:59 +00:00
|
|
|
.I sigval
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-17 10:42:59 +00:00
|
|
|
.IR <signal.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-17 10:42:59 +00:00
|
|
|
.EX
|
|
|
|
union sigval {
|
|
|
|
int sigval_int; /* Integer value */
|
|
|
|
void *sigval_ptr; /* Pointer value */
|
|
|
|
};
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-17 10:42:59 +00:00
|
|
|
Data passed with a signal.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-17 10:42:59 +00:00
|
|
|
.BR pthread_sigqueue (3),
|
|
|
|
.BR sigqueue (3),
|
|
|
|
.BR sigevent (7)
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 17:04:37 +00:00
|
|
|
See also the
|
|
|
|
.I sigevent
|
|
|
|
structure
|
2020-09-20 18:05:51 +00:00
|
|
|
and the
|
|
|
|
.I siginfo_t
|
|
|
|
type
|
2020-09-18 17:04:37 +00:00
|
|
|
in this page.
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- size_t -----------------------/
|
2020-09-17 10:42:59 +00:00
|
|
|
.TP
|
2020-09-18 11:27:55 +00:00
|
|
|
.I size_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-18 11:27:55 +00:00
|
|
|
.I <stddef.h>
|
|
|
|
or
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <aio.h> ,
|
|
|
|
.IR <glob.h> ,
|
|
|
|
.IR <grp.h> ,
|
|
|
|
.IR <iconv.h> ,
|
|
|
|
.IR <monetary.h> ,
|
|
|
|
.IR <mqueue.h> ,
|
|
|
|
.IR <ndbm.h> ,
|
|
|
|
.IR <pwd.h> ,
|
|
|
|
.IR <regex.h> ,
|
|
|
|
.IR <search.h> ,
|
|
|
|
.IR <signal.h> ,
|
|
|
|
.IR <stdio.h> ,
|
|
|
|
.IR <stdlib.h> ,
|
|
|
|
.IR <string.h> ,
|
|
|
|
.IR <strings.h> ,
|
|
|
|
.IR <sys/mman.h> ,
|
|
|
|
.IR <sys/msg.h> ,
|
|
|
|
.IR <sys/sem.h> ,
|
|
|
|
.IR <sys/shm.h> ,
|
|
|
|
.IR <sys/socket.h> ,
|
|
|
|
.IR <sys/uio.h> ,
|
|
|
|
.IR <time.h> ,
|
|
|
|
.IR <unistd.h> ,
|
|
|
|
.IR <wchar.h> ,
|
2020-09-18 11:27:55 +00:00
|
|
|
or
|
|
|
|
.IR <wordexp.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
localedef.1, access.2, ioctl_console.2, ioctl_fslabel.2, openat2.2, write.2, dlsym.3, getopt.3, nl_langinfo.3, termios.3, xcrypt.3, hosts.equiv.5, nsswitch.conf.5, cgroups.7, man-pages.7, netlink.7, system_data_types.7: srcfix: semantic newlines
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2021-08-08 22:26:25 +00:00
|
|
|
Used for a count of bytes.
|
|
|
|
It is the result of the
|
2020-09-18 11:27:55 +00:00
|
|
|
.I sizeof
|
|
|
|
operator.
|
|
|
|
According to the C language standard,
|
|
|
|
it shall be an unsigned integer type
|
|
|
|
capable of storing values in the range [0,
|
|
|
|
.BR SIZE_MAX ].
|
2020-09-22 07:56:03 +00:00
|
|
|
According to POSIX,
|
|
|
|
the implementation shall support one or more programming environments
|
|
|
|
where the width of
|
|
|
|
.I size_t
|
|
|
|
is no greater than the width of the type
|
|
|
|
.IR long .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-20 18:14:08 +00:00
|
|
|
The length modifier for
|
|
|
|
.I size_t
|
|
|
|
for the
|
|
|
|
.BR printf (3)
|
|
|
|
and the
|
|
|
|
.BR scanf (3)
|
|
|
|
families of functions is
|
|
|
|
.BR z ;
|
|
|
|
resulting commonly in
|
|
|
|
.B %zu
|
|
|
|
or
|
|
|
|
.B %zx
|
|
|
|
for printing
|
|
|
|
.I size_t
|
|
|
|
values.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Versions :
|
2020-09-18 11:27:55 +00:00
|
|
|
.IR <aio.h> ,
|
|
|
|
.IR <glob.h> ,
|
|
|
|
.IR <grp.h> ,
|
|
|
|
.IR <iconv.h> ,
|
|
|
|
.IR <mqueue.h> ,
|
|
|
|
.IR <pwd.h> ,
|
2020-10-03 20:11:23 +00:00
|
|
|
.IR <signal.h> ,
|
2020-09-18 11:27:55 +00:00
|
|
|
and
|
2020-09-18 17:04:35 +00:00
|
|
|
.I <sys/socket.h>
|
2020-09-18 11:27:55 +00:00
|
|
|
define
|
|
|
|
.I size_t
|
|
|
|
since POSIX.1-2008.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-03 09:28:48 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-18 20:08:02 +00:00
|
|
|
.BR read (2),
|
|
|
|
.BR write (2),
|
2020-09-18 11:27:55 +00:00
|
|
|
.BR fread (3),
|
|
|
|
.BR fwrite (3),
|
|
|
|
.BR memcmp (3),
|
|
|
|
.BR memcpy (3),
|
|
|
|
.BR memset (3),
|
|
|
|
.BR offsetof (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 11:27:55 +00:00
|
|
|
See also the
|
|
|
|
.I ptrdiff_t
|
2020-09-18 12:04:39 +00:00
|
|
|
and
|
|
|
|
.I ssize_t
|
2020-09-18 11:27:55 +00:00
|
|
|
types in this page.
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2021-04-03 19:39:53 +00:00
|
|
|
.\"------------------------------------- sockaddr ---------------------/
|
|
|
|
.TP
|
|
|
|
.I sockaddr
|
|
|
|
.RS
|
|
|
|
.IR Include :
|
|
|
|
.IR <sys/socket.h> .
|
|
|
|
.PP
|
|
|
|
.EX
|
|
|
|
struct sockaddr {
|
|
|
|
sa_family_t sa_family; /* Address family */
|
|
|
|
char sa_data[]; /* Socket address */
|
|
|
|
};
|
|
|
|
.EE
|
|
|
|
.PP
|
|
|
|
Describes a socket address.
|
|
|
|
.PP
|
|
|
|
.IR "Conforming to" :
|
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
|
|
|
.IR "See also" :
|
|
|
|
.BR accept (2),
|
|
|
|
.BR getpeername (2),
|
|
|
|
.BR getsockname (2),
|
|
|
|
.BR socket (2)
|
|
|
|
.RE
|
2021-04-03 19:39:55 +00:00
|
|
|
.\"------------------------------------- socklen_t --------------------/
|
|
|
|
.TP
|
|
|
|
.I socklen_t
|
|
|
|
.RS
|
|
|
|
.IR Include :
|
|
|
|
.IR <sys/socket.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <netdb.h> .
|
|
|
|
.PP
|
|
|
|
Describes the length of a socket address.
|
|
|
|
According to POSIX,
|
|
|
|
this shall be an integer type of at least 32 bits.
|
|
|
|
.PP
|
|
|
|
.IR "Conforming to" :
|
|
|
|
POSIX.1-2001 and later.
|
|
|
|
.PP
|
|
|
|
.IR "See also" :
|
|
|
|
.BR accept (2),
|
|
|
|
.BR bind (2),
|
|
|
|
.BR connect (2),
|
|
|
|
.BR gethostbyaddr (2),
|
|
|
|
.BR getnameinfo (2),
|
|
|
|
.BR socket (2)
|
|
|
|
.PP
|
|
|
|
See also the
|
|
|
|
.I sockaddr
|
|
|
|
structure in this page.
|
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- ssize_t ----------------------/
|
2020-09-18 11:27:55 +00:00
|
|
|
.TP
|
2020-09-17 10:42:59 +00:00
|
|
|
.I ssize_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <aio.h> ,
|
|
|
|
.IR <monetary.h> ,
|
|
|
|
.IR <mqueue.h> ,
|
|
|
|
.IR <stdio.h> ,
|
|
|
|
.IR <sys/msg.h> ,
|
|
|
|
.IR <sys/socket.h> ,
|
|
|
|
.IR <sys/uio.h> ,
|
2020-09-17 10:42:59 +00:00
|
|
|
or
|
|
|
|
.IR <unistd.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-17 10:42:59 +00:00
|
|
|
Used for a count of bytes or an error indication.
|
|
|
|
According to POSIX, it shall be a signed integer type
|
|
|
|
capable of storing values at least in the range [-1,
|
2020-09-22 07:56:03 +00:00
|
|
|
.BR SSIZE_MAX ],
|
|
|
|
and the implementation shall support one or more programming environments
|
|
|
|
where the width of
|
|
|
|
.I ssize_t
|
|
|
|
is no greater than the width of the type
|
|
|
|
.IR long .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-20 18:14:08 +00:00
|
|
|
Glibc and most other implementations provide a length modifier for
|
|
|
|
.I ssize_t
|
|
|
|
for the
|
|
|
|
.BR printf (3)
|
|
|
|
and the
|
|
|
|
.BR scanf (3)
|
|
|
|
families of functions, which is
|
|
|
|
.BR z ;
|
|
|
|
resulting commonly in
|
|
|
|
.B %zd
|
|
|
|
or
|
|
|
|
.B %zi
|
|
|
|
for printing
|
|
|
|
.I ssize_t
|
|
|
|
values.
|
|
|
|
Although
|
|
|
|
.B z
|
|
|
|
works for
|
|
|
|
.I ssize_t
|
2020-09-20 20:14:51 +00:00
|
|
|
on most implementations,
|
|
|
|
portable POSIX programs should avoid using it\(emfor example,
|
|
|
|
by converting the value to
|
2020-09-20 18:14:08 +00:00
|
|
|
.I intmax_t
|
2020-09-20 20:14:51 +00:00
|
|
|
and using its length modifier
|
|
|
|
.RB ( j ).
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-17 10:42:59 +00:00
|
|
|
.BR read (2),
|
|
|
|
.BR readlink (2),
|
|
|
|
.BR readv (2),
|
|
|
|
.BR recv (2),
|
|
|
|
.BR send (2),
|
|
|
|
.BR write (2)
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-18 11:27:55 +00:00
|
|
|
See also the
|
2020-09-18 12:04:40 +00:00
|
|
|
.I ptrdiff_t
|
|
|
|
and
|
2020-09-18 11:27:55 +00:00
|
|
|
.I size_t
|
2020-09-18 12:04:40 +00:00
|
|
|
types in this page.
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- suseconds_t ------------------/
|
2020-09-17 10:42:59 +00:00
|
|
|
.TP
|
|
|
|
.I suseconds_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <sys/select.h> ,
|
2020-09-17 10:42:59 +00:00
|
|
|
or
|
|
|
|
.IR <sys/time.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-17 10:42:59 +00:00
|
|
|
Used for time in microseconds.
|
|
|
|
According to POSIX, it shall be a signed integer type
|
2020-09-22 07:56:03 +00:00
|
|
|
capable of storing values at least in the range [-1, 1000000],
|
2020-09-22 07:59:57 +00:00
|
|
|
and the implementation shall support one or more programming environments
|
2020-09-22 07:56:03 +00:00
|
|
|
where the width of
|
|
|
|
.I suseconds_t
|
|
|
|
is no greater than the width of the type
|
|
|
|
.IR long .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-09-17 10:42:59 +00:00
|
|
|
.I timeval
|
|
|
|
structure in this page.
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- time_t -----------------------/
|
2020-09-17 10:42:59 +00:00
|
|
|
.TP
|
|
|
|
.I time_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.I <time.h>
|
2020-09-17 10:42:59 +00:00
|
|
|
or
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <sched.h> ,
|
|
|
|
.IR <sys/msg.h> ,
|
|
|
|
.IR <sys/select.h> ,
|
|
|
|
.IR <sys/sem.h> ,
|
|
|
|
.IR <sys/shm.h> ,
|
|
|
|
.IR <sys/stat.h> ,
|
|
|
|
.IR <sys/time.h> ,
|
2020-09-17 10:42:59 +00:00
|
|
|
or
|
|
|
|
.IR <utime.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-17 10:42:59 +00:00
|
|
|
Used for time in seconds.
|
|
|
|
According to POSIX, it shall be an integer type.
|
2020-10-18 13:00:14 +00:00
|
|
|
.\" In POSIX.1-2001, the type was specified as being either an integer
|
|
|
|
.\" type or a real-floating type. However, existing implementations
|
|
|
|
.\" used an integer type, and POSIX.1-2008 tightened the specification
|
|
|
|
.\" to reflect this.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Versions :
|
2020-09-17 10:42:59 +00:00
|
|
|
.I <sched.h>
|
|
|
|
defines
|
|
|
|
.I time_t
|
|
|
|
since POSIX.1-2008.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-03 09:28:48 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-17 10:42:59 +00:00
|
|
|
.BR stime (2),
|
|
|
|
.BR time (2),
|
|
|
|
.BR ctime (3),
|
|
|
|
.BR difftime (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- timer_t ----------------------/
|
2020-09-17 10:42:59 +00:00
|
|
|
.TP
|
|
|
|
.I timer_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
2020-09-17 10:42:59 +00:00
|
|
|
.IR <time.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-17 10:42:59 +00:00
|
|
|
Used for timer ID returned by
|
|
|
|
.BR timer_create (2).
|
|
|
|
According to POSIX,
|
|
|
|
there are no defined comparison or assignment operators for this type.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-17 10:42:59 +00:00
|
|
|
.BR timer_create (2),
|
|
|
|
.BR timer_delete (2),
|
|
|
|
.BR timer_getoverrun (2),
|
|
|
|
.BR timer_settime (2)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- timespec ---------------------/
|
2020-09-17 10:42:59 +00:00
|
|
|
.TP
|
|
|
|
.I timespec
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <time.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <aio.h> ,
|
|
|
|
.IR <mqueue.h> ,
|
|
|
|
.IR <sched.h> ,
|
|
|
|
.IR <signal.h> ,
|
|
|
|
.IR <sys/select.h> ,
|
2020-09-17 10:42:59 +00:00
|
|
|
or
|
|
|
|
.IR <sys/stat.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-17 10:42:59 +00:00
|
|
|
.EX
|
|
|
|
struct timespec {
|
|
|
|
time_t tv_sec; /* Seconds */
|
|
|
|
long tv_nsec; /* Nanoseconds */
|
|
|
|
};
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-17 10:42:59 +00:00
|
|
|
Describes times in seconds and nanoseconds.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C11 and later; POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-17 10:42:59 +00:00
|
|
|
.BR clock_gettime (2),
|
|
|
|
.BR clock_nanosleep (2),
|
|
|
|
.BR nanosleep (2),
|
|
|
|
.BR timerfd_gettime (2),
|
|
|
|
.BR timer_gettime (2)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-18 17:04:39 +00:00
|
|
|
.\"------------------------------------- timeval ----------------------/
|
2020-09-17 10:42:59 +00:00
|
|
|
.TP
|
|
|
|
.I timeval
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <sys/time.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <sys/resource.h> ,
|
|
|
|
.IR <sys/select.h> ,
|
2020-09-17 10:42:59 +00:00
|
|
|
or
|
|
|
|
.IR <utmpx.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-17 10:42:59 +00:00
|
|
|
.EX
|
|
|
|
struct timeval {
|
|
|
|
time_t tv_sec; /* Seconds */
|
|
|
|
suseconds_t tv_usec; /* Microseconds */
|
|
|
|
};
|
|
|
|
.EE
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-17 10:42:59 +00:00
|
|
|
Describes times in seconds and microseconds.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-17 10:42:59 +00:00
|
|
|
.BR gettimeofday (2),
|
|
|
|
.BR select (2),
|
|
|
|
.BR utimes (2),
|
|
|
|
.BR adjtime (3),
|
|
|
|
.BR futimes (3),
|
|
|
|
.BR timeradd (3)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-22 08:22:35 +00:00
|
|
|
.\"------------------------------------- uid_t ----------------------/
|
|
|
|
.TP
|
|
|
|
.I uid_t
|
2020-09-25 11:28:23 +00:00
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <sys/types.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <pwd.h> ,
|
|
|
|
.IR <signal.h> ,
|
|
|
|
.IR <stropts.h> ,
|
|
|
|
.IR <sys/ipc.h> ,
|
|
|
|
.IR <sys/stat.h> ,
|
2020-09-22 08:22:35 +00:00
|
|
|
or
|
|
|
|
.IR <unistd.h> .
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-09-22 08:22:35 +00:00
|
|
|
A type used to hold user IDs.
|
|
|
|
According to POSIX,
|
|
|
|
this shall be an integer type.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
POSIX.1-2001 and later.
|
2020-09-25 11:28:23 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-22 08:22:35 +00:00
|
|
|
.BR chown (2),
|
|
|
|
.BR getuid (2),
|
|
|
|
.BR geteuid (2),
|
|
|
|
.BR getresuid (2),
|
2021-05-09 21:39:30 +00:00
|
|
|
.BR getpwnam (3),
|
2020-09-22 08:22:35 +00:00
|
|
|
.BR credentials (7)
|
2020-09-25 11:28:23 +00:00
|
|
|
.RE
|
2020-09-29 10:30:25 +00:00
|
|
|
.\"------------------------------------- uintmax_t --------------------/
|
|
|
|
.TP
|
|
|
|
.I uintmax_t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 10:30:25 +00:00
|
|
|
.IR <stdint.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <inttypes.h> .
|
|
|
|
.PP
|
|
|
|
An unsigned integer type
|
|
|
|
capable of representing any value of any unsigned integer type
|
|
|
|
supported by the implementation.
|
|
|
|
According to the C language standard, it shall be
|
|
|
|
capable of storing values in the range [0,
|
|
|
|
.BR UINTMAX_MAX ].
|
|
|
|
.PP
|
|
|
|
The macro
|
2020-09-29 11:48:52 +00:00
|
|
|
.BR UINTMAX_C ()
|
2020-09-29 10:30:25 +00:00
|
|
|
.\" TODO: Document UINT*_C(3)
|
|
|
|
expands its argument to an integer constant of type
|
|
|
|
.IR uintmax_t .
|
|
|
|
.PP
|
|
|
|
The length modifier for
|
|
|
|
.I uintmax_t
|
|
|
|
for the
|
|
|
|
.BR printf (3)
|
|
|
|
and the
|
|
|
|
.BR scanf (3)
|
|
|
|
families of functions is
|
|
|
|
.BR j ;
|
|
|
|
resulting commonly in
|
|
|
|
.B %ju
|
|
|
|
or
|
|
|
|
.B %jx
|
|
|
|
for printing
|
|
|
|
.I uintmax_t
|
|
|
|
values.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 13:29:04 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Bugs :
|
2020-09-29 10:30:25 +00:00
|
|
|
.I uintmax_t
|
|
|
|
is not large enough to represent values of type
|
|
|
|
.I unsigned __int128
|
|
|
|
in implementations where
|
|
|
|
.I unsigned __int128
|
|
|
|
is defined and
|
|
|
|
.I unsigned long long
|
|
|
|
is less than 128 bits wide.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-09-29 10:30:25 +00:00
|
|
|
.I intmax_t
|
|
|
|
type in this page.
|
|
|
|
.RE
|
2020-09-29 10:30:29 +00:00
|
|
|
.\"------------------------------------- uintN_t ----------------------/
|
|
|
|
.TP
|
|
|
|
.IR uint N _t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 10:30:29 +00:00
|
|
|
.IR <stdint.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <inttypes.h> .
|
|
|
|
.PP
|
2020-10-01 10:15:47 +00:00
|
|
|
.IR uint8_t ,
|
|
|
|
.IR uint16_t ,
|
|
|
|
.IR uint32_t ,
|
|
|
|
.I uint64_t
|
2020-09-29 10:30:29 +00:00
|
|
|
.PP
|
|
|
|
An unsigned integer type
|
|
|
|
of a fixed width of exactly N bits,
|
|
|
|
N being the value specified in its type name.
|
|
|
|
According to the C language standard, they shall be
|
|
|
|
capable of storing values in the range [0,
|
|
|
|
.BR UINT N _MAX ],
|
|
|
|
substituting N by the appropriate number.
|
|
|
|
.PP
|
|
|
|
According to POSIX,
|
2020-10-01 10:15:47 +00:00
|
|
|
.IR uint8_t ,
|
2020-10-03 20:11:23 +00:00
|
|
|
.IR uint16_t ,
|
2020-09-29 10:30:29 +00:00
|
|
|
and
|
|
|
|
.I uint32_t
|
|
|
|
are required;
|
|
|
|
.I uint64_t
|
|
|
|
is only required in implementations that provide integer types
|
|
|
|
with width 64;
|
|
|
|
and all other types of this form are optional.
|
|
|
|
.PP
|
|
|
|
The length modifiers for the
|
|
|
|
.IR uint N _t
|
|
|
|
types for the
|
|
|
|
.BR printf (3)
|
|
|
|
family of functions
|
|
|
|
are expanded by macros of the forms
|
|
|
|
.BR PRIu N,
|
|
|
|
.BR PRIo N,
|
2020-10-03 20:11:23 +00:00
|
|
|
.BR PRIx N,
|
2020-09-29 10:30:29 +00:00
|
|
|
and
|
|
|
|
.BR PRIX N
|
|
|
|
(defined in
|
|
|
|
.IR <inttypes.h> );
|
|
|
|
resulting for example in
|
|
|
|
.B %"PRIu32"
|
|
|
|
or
|
|
|
|
.B %"PRIx32"
|
|
|
|
for printing
|
|
|
|
.I uint32_t
|
|
|
|
values.
|
|
|
|
The length modifiers for the
|
|
|
|
.IR uint N _t
|
|
|
|
types for the
|
|
|
|
.BR scanf (3)
|
|
|
|
family of functions
|
|
|
|
are expanded by macros of the forms
|
|
|
|
.BR SCNu N,
|
|
|
|
.BR SCNo N,
|
2020-10-03 20:11:23 +00:00
|
|
|
.BR SCNx N,
|
2020-09-29 10:30:29 +00:00
|
|
|
and
|
|
|
|
.BR SCNX N
|
|
|
|
(defined in
|
|
|
|
.IR <inttypes.h> );
|
|
|
|
resulting for example in
|
|
|
|
.B %"SCNu16"
|
|
|
|
or
|
|
|
|
.B %"SCNx16"
|
|
|
|
for scanning
|
|
|
|
.I uint16_t
|
|
|
|
values.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-29 10:30:29 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-09-29 10:30:29 +00:00
|
|
|
.IR intmax_t ,
|
|
|
|
.IR int N _t ,
|
|
|
|
and
|
2020-10-03 20:02:37 +00:00
|
|
|
.IR uintmax_t
|
2020-09-29 10:30:29 +00:00
|
|
|
types in this page.
|
|
|
|
.RE
|
2020-10-01 10:15:59 +00:00
|
|
|
.\"------------------------------------- uintptr_t --------------------/
|
|
|
|
.TP
|
|
|
|
.I uintptr_t
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-10-01 10:15:59 +00:00
|
|
|
.IR <stdint.h> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <inttypes.h> .
|
|
|
|
.PP
|
|
|
|
An unsigned integer type
|
|
|
|
such that any valid
|
|
|
|
.RI ( "void *" )
|
|
|
|
value can be converted to this type and back.
|
|
|
|
According to the C language standard, it shall be
|
|
|
|
capable of storing values in the range [0,
|
|
|
|
.BR UINTPTR_MAX ].
|
|
|
|
.PP
|
|
|
|
The length modifier for
|
|
|
|
.I uintptr_t
|
|
|
|
for the
|
|
|
|
.BR printf (3)
|
|
|
|
family of functions
|
|
|
|
is expanded by the macros
|
2020-10-03 20:11:23 +00:00
|
|
|
.BR PRIuPTR ,
|
|
|
|
.BR PRIoPTR ,
|
|
|
|
.BR PRIxPTR ,
|
2020-10-01 10:15:59 +00:00
|
|
|
and
|
|
|
|
.B PRIXPTR
|
|
|
|
(defined in
|
|
|
|
.IR <inttypes.h> );
|
|
|
|
resulting commonly in
|
|
|
|
.B %"PRIuPTR"
|
|
|
|
or
|
|
|
|
.B %"PRIxPTR"
|
|
|
|
for printing
|
|
|
|
.I uintptr_t
|
|
|
|
values.
|
|
|
|
The length modifier for
|
|
|
|
.I uintptr_t
|
|
|
|
for the
|
|
|
|
.BR scanf (3)
|
|
|
|
family of functions
|
|
|
|
is expanded by the macros
|
|
|
|
.BR SCNuPTR,
|
|
|
|
.BR SCNoPTR,
|
getent.1, fanotify_mark.2, fcntl.2, futex.2, membarrier.2, mmap.2, mount.2, msgctl.2, readv.2, semctl.2, set_mempolicy.2, shmctl.2, syscalls.2, abs.3, bstring.3, btree.3, ctime.3, drand48.3, fgetc.3, fopen.3, gethostbyname.3, getnetent.3, getprotoent.3, getservent.3, INFINITY.3, __ppc_set_ppr_med.3, inet.3, j0.3, makecontext.3, printf.3, puts.3, resolver.3, sigsetops.3, elf.5, nscd.conf.5, proc.5, inotify.7, ipv6.7, spufs.7, system_data_types.7: Use Oxford comma
Found using:
pcregrep -rnM "^\.[B|I]R .*,\n\.[B|I].*[^,]\nand" man? |grep ^man |sort
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-15 12:32:31 +00:00
|
|
|
.BR SCNxPTR ,
|
2020-10-01 10:15:59 +00:00
|
|
|
and
|
|
|
|
.B SCNXPTR
|
|
|
|
(defined in
|
|
|
|
.IR <inttypes.h> );
|
|
|
|
resulting commonly in
|
|
|
|
.B %"SCNuPTR"
|
|
|
|
or
|
|
|
|
.B %"SCNxPTR"
|
|
|
|
for scanning
|
|
|
|
.I uintptr_t
|
|
|
|
values.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:59 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
|
|
|
the
|
2020-10-01 10:15:59 +00:00
|
|
|
.I intptr_t
|
|
|
|
and
|
|
|
|
.I void *
|
|
|
|
types in this page.
|
|
|
|
.RE
|
2020-09-26 17:08:14 +00:00
|
|
|
.\"------------------------------------- va_list ----------------------/
|
|
|
|
.TP
|
|
|
|
.I va_list
|
|
|
|
.RS
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Include :
|
2020-09-29 14:22:19 +00:00
|
|
|
.IR <stdarg> .
|
|
|
|
Alternatively,
|
|
|
|
.IR <stdio.h> ,
|
2020-09-26 17:08:14 +00:00
|
|
|
or
|
|
|
|
.IR <wchar.h> .
|
|
|
|
.PP
|
|
|
|
Used by functions with a varying number of arguments of varying types.
|
|
|
|
The function must declare an object of type
|
|
|
|
.I va_list
|
|
|
|
which is used by the macros
|
|
|
|
.BR va_start (3),
|
|
|
|
.BR va_arg (3),
|
getent.1, fanotify_mark.2, fcntl.2, futex.2, membarrier.2, mmap.2, mount.2, msgctl.2, readv.2, semctl.2, set_mempolicy.2, shmctl.2, syscalls.2, abs.3, bstring.3, btree.3, ctime.3, drand48.3, fgetc.3, fopen.3, gethostbyname.3, getnetent.3, getprotoent.3, getservent.3, INFINITY.3, __ppc_set_ppr_med.3, inet.3, j0.3, makecontext.3, printf.3, puts.3, resolver.3, sigsetops.3, elf.5, nscd.conf.5, proc.5, inotify.7, ipv6.7, spufs.7, system_data_types.7: Use Oxford comma
Found using:
pcregrep -rnM "^\.[B|I]R .*,\n\.[B|I].*[^,]\nand" man? |grep ^man |sort
Signed-off-by: Alejandro Colomar <colomar.6.4.3@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-11-15 12:32:31 +00:00
|
|
|
.BR va_copy (3),
|
2020-09-26 17:08:14 +00:00
|
|
|
and
|
|
|
|
.BR va_end (3)
|
|
|
|
to traverse the list of arguments.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-01 10:15:46 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
2020-09-26 17:08:14 +00:00
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-09-26 17:08:14 +00:00
|
|
|
.BR va_start (3),
|
|
|
|
.BR va_arg (3),
|
|
|
|
.BR va_copy (3),
|
|
|
|
.BR va_end (3)
|
|
|
|
.RE
|
2020-10-02 19:28:15 +00:00
|
|
|
.\"------------------------------------- void * -----------------------/
|
|
|
|
.TP
|
|
|
|
.I void *
|
|
|
|
.RS
|
|
|
|
According to the C language standard,
|
|
|
|
a pointer to any object type may be converted to a pointer to
|
|
|
|
.I void
|
|
|
|
and back.
|
|
|
|
POSIX further requires that any pointer,
|
|
|
|
including pointers to functions,
|
|
|
|
may be converted to a pointer to
|
|
|
|
.I void
|
|
|
|
and back.
|
|
|
|
.PP
|
|
|
|
Conversions from and to any other pointer type are done implicitly,
|
|
|
|
not requiring casts at all.
|
|
|
|
Note that this feature prevents any kind of type checking:
|
|
|
|
the programmer should be careful not to convert a
|
|
|
|
.I void *
|
|
|
|
value to a type incompatible to that of the underlying data,
|
|
|
|
because that would result in undefined behavior.
|
|
|
|
.PP
|
|
|
|
This type is useful in function parameters and return value
|
|
|
|
to allow passing values of any type.
|
|
|
|
The function will typically use some mechanism to know
|
|
|
|
the real type of the data being passed via a pointer to
|
|
|
|
.IR void .
|
|
|
|
.PP
|
|
|
|
A value of this type can't be dereferenced,
|
|
|
|
as it would give a value of type
|
|
|
|
.IR void ,
|
|
|
|
which is not possible.
|
|
|
|
Likewise, pointer arithmetic is not possible with this type.
|
|
|
|
However, in GNU C, pointer arithmetic is allowed
|
|
|
|
as an extension to the standard;
|
|
|
|
this is done by treating the size of a
|
|
|
|
.I void
|
|
|
|
or of a function as 1.
|
|
|
|
A consequence of this is that
|
|
|
|
.I sizeof
|
|
|
|
is also allowed on
|
|
|
|
.I void
|
|
|
|
and on function types, and returns 1.
|
|
|
|
.PP
|
|
|
|
The conversion specifier for
|
|
|
|
.I void *
|
|
|
|
for the
|
|
|
|
.BR printf (3)
|
|
|
|
and the
|
|
|
|
.BR scanf (3)
|
|
|
|
families of functions is
|
|
|
|
.BR p .
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR Versions :
|
2020-10-02 19:28:15 +00:00
|
|
|
The POSIX requirement about compatibility between
|
|
|
|
.I void *
|
|
|
|
and function pointers was added in
|
|
|
|
POSIX.1-2008 Technical Corrigendum 1 (2013).
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "Conforming to" :
|
2020-10-02 19:28:15 +00:00
|
|
|
C99 and later; POSIX.1-2001 and later.
|
|
|
|
.PP
|
2020-10-27 13:09:52 +00:00
|
|
|
.IR "See also" :
|
2020-10-02 19:28:15 +00:00
|
|
|
.BR malloc (3),
|
|
|
|
.BR memcmp (3),
|
|
|
|
.BR memcpy (3),
|
|
|
|
.BR memset (3)
|
|
|
|
.PP
|
|
|
|
See also the
|
|
|
|
.I intptr_t
|
|
|
|
and
|
|
|
|
.I uintptr_t
|
|
|
|
types in this page.
|
|
|
|
.RE
|
2020-09-25 11:28:23 +00:00
|
|
|
.\"--------------------------------------------------------------------/
|
2020-09-17 10:42:59 +00:00
|
|
|
.SH NOTES
|
|
|
|
The structures described in this manual page shall contain,
|
|
|
|
at least, the members shown in their definition, in no particular order.
|
2020-09-21 13:32:57 +00:00
|
|
|
.PP
|
|
|
|
Most of the integer types described in this page don't have
|
|
|
|
a corresponding length modifier for the
|
|
|
|
.BR printf (3)
|
|
|
|
and the
|
|
|
|
.BR scanf (3)
|
|
|
|
families of functions.
|
|
|
|
To print a value of an integer type that doesn't have a length modifier,
|
|
|
|
it should be converted to
|
|
|
|
.I intmax_t
|
|
|
|
or
|
|
|
|
.I uintmax_t
|
|
|
|
by an explicit cast.
|
|
|
|
To scan into a variable of an integer type
|
|
|
|
that doesn't have a length modifier,
|
|
|
|
an intermediate temporary variable of type
|
|
|
|
.I intmax_t
|
|
|
|
or
|
|
|
|
.I uintmax_t
|
|
|
|
should be used.
|
|
|
|
When copying from the temporary variable to the destination variable,
|
|
|
|
the value could overflow.
|
2020-09-21 14:47:15 +00:00
|
|
|
If the type has upper and lower limits,
|
2020-09-21 13:32:57 +00:00
|
|
|
the user should check that the value is within those limits,
|
|
|
|
before actually copying the value.
|
|
|
|
The example below shows how these conversions should be done.
|
2020-09-29 14:22:19 +00:00
|
|
|
.SS Conventions used in this page
|
|
|
|
In "Conforming to" we only concern ourselves with
|
|
|
|
C99 and later and POSIX.1-2001 and later.
|
|
|
|
Some types may be specified in earlier versions of one of these standards,
|
|
|
|
but in the interests of simplicity we omit details from earlier standards.
|
|
|
|
.PP
|
|
|
|
In "Include", we first note the "primary" header(s) that
|
|
|
|
define the type according to either the C or POSIX.1 standards.
|
|
|
|
Under "Alternatively", we note additional headers that
|
|
|
|
the standards specify shall define the type.
|
2020-09-21 13:32:57 +00:00
|
|
|
.SH EXAMPLES
|
|
|
|
The program shown below scans from a string and prints a value stored in
|
|
|
|
a variable of an integer type that doesn't have a length modifier.
|
|
|
|
The appropriate conversions from and to
|
|
|
|
.IR intmax_t ,
|
2020-09-21 14:08:18 +00:00
|
|
|
and the appropriate range checks,
|
|
|
|
are used as explained in the notes section above.
|
2020-09-21 13:32:57 +00:00
|
|
|
.PP
|
|
|
|
.EX
|
|
|
|
#include <stdint.h>
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <stdlib.h>
|
|
|
|
#include <sys/types.h>
|
|
|
|
|
|
|
|
int
|
|
|
|
main (void)
|
|
|
|
{
|
|
|
|
static const char *const str = "500000 us in half a second";
|
|
|
|
suseconds_t us;
|
|
|
|
intmax_t tmp;
|
|
|
|
|
ioctl_ns.2, keyctl.2, memfd_create.2, pidfd_send_signal.2, poll.2, seccomp.2, signalfd.2, timerfd_create.2, unshare.2, dlinfo.3, duplocale.3, fopencookie.3, getgrouplist.3, getifaddrs.3, getprotoent_r.3, getservent_r.3, insque.3, printf.3, pthread_attr_init.3, pthread_cancel.3, pthread_create.3, pthread_mutexattr_setrobust.3, pthread_setaffinity_np.3, qsort.3, sem_wait.3, core.5, elf.5, aio.7, epoll.7, pkeys.7, system_data_types.7, unix.7: Use periods more consistently inside code comments
In general, complete sentences in free-standing comments
should be terminated by periods.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-12-27 10:42:50 +00:00
|
|
|
/* Scan the number from the string into the temporary variable. */
|
2020-09-21 14:08:18 +00:00
|
|
|
|
2020-09-21 13:32:57 +00:00
|
|
|
sscanf(str, "%jd", &tmp);
|
|
|
|
|
ioctl_ns.2, keyctl.2, memfd_create.2, pidfd_send_signal.2, poll.2, seccomp.2, signalfd.2, timerfd_create.2, unshare.2, dlinfo.3, duplocale.3, fopencookie.3, getgrouplist.3, getifaddrs.3, getprotoent_r.3, getservent_r.3, insque.3, printf.3, pthread_attr_init.3, pthread_cancel.3, pthread_create.3, pthread_mutexattr_setrobust.3, pthread_setaffinity_np.3, qsort.3, sem_wait.3, core.5, elf.5, aio.7, epoll.7, pkeys.7, system_data_types.7, unix.7: Use periods more consistently inside code comments
In general, complete sentences in free-standing comments
should be terminated by periods.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-12-27 10:42:50 +00:00
|
|
|
/* Check that the value is within the valid range of suseconds_t. */
|
2020-09-21 14:08:18 +00:00
|
|
|
|
|
|
|
if (tmp < \-1 || tmp > 1000000) {
|
|
|
|
fprintf(stderr, "Scanned value outside valid range!\en");
|
2020-09-21 13:32:57 +00:00
|
|
|
exit(EXIT_FAILURE);
|
|
|
|
}
|
|
|
|
|
ioctl_ns.2, keyctl.2, memfd_create.2, pidfd_send_signal.2, poll.2, seccomp.2, signalfd.2, timerfd_create.2, unshare.2, dlinfo.3, duplocale.3, fopencookie.3, getgrouplist.3, getifaddrs.3, getprotoent_r.3, getservent_r.3, insque.3, printf.3, pthread_attr_init.3, pthread_cancel.3, pthread_create.3, pthread_mutexattr_setrobust.3, pthread_setaffinity_np.3, qsort.3, sem_wait.3, core.5, elf.5, aio.7, epoll.7, pkeys.7, system_data_types.7, unix.7: Use periods more consistently inside code comments
In general, complete sentences in free-standing comments
should be terminated by periods.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-12-27 10:42:50 +00:00
|
|
|
/* Copy the value to the suseconds_t variable \(aqus\(aq. */
|
2020-09-21 14:08:18 +00:00
|
|
|
|
2020-09-21 13:32:57 +00:00
|
|
|
us = tmp;
|
|
|
|
|
2020-09-21 14:08:18 +00:00
|
|
|
/* Even though suseconds_t can hold the value \-1, this isn\(aqt
|
ioctl_ns.2, keyctl.2, memfd_create.2, pidfd_send_signal.2, poll.2, seccomp.2, signalfd.2, timerfd_create.2, unshare.2, dlinfo.3, duplocale.3, fopencookie.3, getgrouplist.3, getifaddrs.3, getprotoent_r.3, getservent_r.3, insque.3, printf.3, pthread_attr_init.3, pthread_cancel.3, pthread_create.3, pthread_mutexattr_setrobust.3, pthread_setaffinity_np.3, qsort.3, sem_wait.3, core.5, elf.5, aio.7, epoll.7, pkeys.7, system_data_types.7, unix.7: Use periods more consistently inside code comments
In general, complete sentences in free-standing comments
should be terminated by periods.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-12-27 10:42:50 +00:00
|
|
|
a sensible number of microseconds. */
|
2020-09-21 14:08:18 +00:00
|
|
|
|
2020-09-21 13:32:57 +00:00
|
|
|
if (us < 0) {
|
2020-09-21 14:08:18 +00:00
|
|
|
fprintf(stderr, "Scanned value shouldn\(aqt be negative!\en");
|
2020-09-21 13:32:57 +00:00
|
|
|
exit(EXIT_FAILURE);
|
|
|
|
}
|
|
|
|
|
ioctl_ns.2, keyctl.2, memfd_create.2, pidfd_send_signal.2, poll.2, seccomp.2, signalfd.2, timerfd_create.2, unshare.2, dlinfo.3, duplocale.3, fopencookie.3, getgrouplist.3, getifaddrs.3, getprotoent_r.3, getservent_r.3, insque.3, printf.3, pthread_attr_init.3, pthread_cancel.3, pthread_create.3, pthread_mutexattr_setrobust.3, pthread_setaffinity_np.3, qsort.3, sem_wait.3, core.5, elf.5, aio.7, epoll.7, pkeys.7, system_data_types.7, unix.7: Use periods more consistently inside code comments
In general, complete sentences in free-standing comments
should be terminated by periods.
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
2020-12-27 10:42:50 +00:00
|
|
|
/* Print the value. */
|
2020-09-21 14:08:18 +00:00
|
|
|
|
|
|
|
printf("There are %jd microseconds in half a second.\en",
|
|
|
|
(intmax_t) us);
|
2020-09-21 13:32:57 +00:00
|
|
|
|
|
|
|
exit(EXIT_SUCCESS);
|
|
|
|
}
|
|
|
|
.EE
|
2020-09-17 20:29:29 +00:00
|
|
|
.SH SEE ALSO
|
|
|
|
.BR feature_test_macros (7),
|
|
|
|
.BR standards (7)
|