---
name: "tcflush"
section: "3"
platform: "linux"
package: "man-pages"
version: "6.19-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux", "freebsd"]
url: "https://new.carta.tech/tcflush"
---

# tcflush(3)

discard pending data

## NAME

tcflush - discard pending data

## LIBRARY

Standard C library (*libc*, *-lc*)

## SYNOPSIS

```
#include <termios.h>
```

**int tcflush(int** *fd***, int** *queue\_selector***);**

## DESCRIPTION

**tcflush**() discards data written to the object referred to by *fd* but not transmitted, or data received but not read, depending on the value of *queue\_selector*:

- **TCIFLUSH**

  flushes data received but not read.

- **TCOFLUSH**

  flushes data written but not transmitted.

- **TCIOFLUSH**

  flushes both data received but not read, and data written but not transmitted.

## RETURN VALUE

- **0**

  on success.

- **-1**

  on failure and set *errno* to indicate the error.

## ATTRIBUTES

For an explanation of the terms used in this section, see [**attributes**(7)](/attributes/7.md).

| | | |
| --- | --- | --- |
| **Interface** | **Attribute** | **Value** |
| **tcflush**() | Thread safety | MT-Safe |

## STANDARDS

POSIX.1-2008.

## HISTORY

POSIX.1-2001.

## SEE ALSO

[**tcsendbreak**(3)](/tcsendbreak/3.md), [**tcdrain**(3)](/tcdrain/3.md), [**tcflow**(3)](/tcflow/3.md), [**termios**(7)](/termios/7.md)
