---
name: "swap"
section: "3"
platform: "linux"
package: "lapack-doc"
version: "3.12.1-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux", "macos"]
url: "https://new.carta.tech/swap"
---

# swap(3)

swap: x \<=\> y

## NAME

swap - swap: x \<=\> y

## SYNOPSIS

### Functions

subroutine **cswap** (n, cx, incx, cy, incy)\
 **CSWAP**  subroutine **dswap** (n, dx, incx, dy, incy)\
 **DSWAP**  subroutine **sswap** (n, sx, incx, sy, incy)\
 **SSWAP**  subroutine **zswap** (n, zx, incx, zy, incy)\
 **ZSWAP**

## Detailed Description

## Function Documentation

### subroutine cswap (integer n, complex, dimension(\*) cx, integer incx, complex, dimension(\*) cy, integer incy)

**CSWAP**

**Purpose:**

```
!>
!>   CSWAP interchanges two vectors.
!>
```

**Parameters**

*N*

```
!>          N is INTEGER
!>         number of elements in input vector(s)
!>
```

*CX*

```
!>          CX is COMPLEX array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
!>
```

*INCX*

```
!>          INCX is INTEGER
!>         storage spacing between elements of CX
!>
```

*CY*

```
!>          CY is COMPLEX array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
!>
```

*INCY*

```
!>          INCY is INTEGER
!>         storage spacing between elements of CY
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

**Further Details:**

```
!>
!>     jack dongarra, linpack, 3/11/78.
!>     modified 12/3/93, array(1) declarations changed to array(*)
!>
```

Definition at line **80** of file **cswap.f**.

### subroutine dswap (integer n, double precision, dimension(\*) dx, integer incx, double precision, dimension(\*) dy, integer incy)

**DSWAP**

**Purpose:**

```
!>
!>    DSWAP interchanges two vectors.
!>    uses unrolled loops for increments equal to 1.
!>
```

**Parameters**

*N*

```
!>          N is INTEGER
!>         number of elements in input vector(s)
!>
```

*DX*

```
!>          DX is DOUBLE PRECISION array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
!>
```

*INCX*

```
!>          INCX is INTEGER
!>         storage spacing between elements of DX
!>
```

*DY*

```
!>          DY is DOUBLE PRECISION array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
!>
```

*INCY*

```
!>          INCY is INTEGER
!>         storage spacing between elements of DY
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

**Further Details:**

```
!>
!>     jack dongarra, linpack, 3/11/78.
!>     modified 12/3/93, array(1) declarations changed to array(*)
!>
```

Definition at line **81** of file **dswap.f**.

### subroutine sswap (integer n, real, dimension(\*) sx, integer incx, real, dimension(\*) sy, integer incy)

**SSWAP**

**Purpose:**

```
!>
!>    SSWAP interchanges two vectors.
!>    uses unrolled loops for increments equal to 1.
!>
```

**Parameters**

*N*

```
!>          N is INTEGER
!>         number of elements in input vector(s)
!>
```

*SX*

```
!>          SX is REAL array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
!>
```

*INCX*

```
!>          INCX is INTEGER
!>         storage spacing between elements of SX
!>
```

*SY*

```
!>          SY is REAL array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
!>
```

*INCY*

```
!>          INCY is INTEGER
!>         storage spacing between elements of SY
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

**Further Details:**

```
!>
!>     jack dongarra, linpack, 3/11/78.
!>     modified 12/3/93, array(1) declarations changed to array(*)
!>
```

Definition at line **81** of file **sswap.f**.

### subroutine zswap (integer n, complex\*16, dimension(\*) zx, integer incx, complex\*16, dimension(\*) zy, integer incy)

**ZSWAP**

**Purpose:**

```
!>
!>    ZSWAP interchanges two vectors.
!>
```

**Parameters**

*N*

```
!>          N is INTEGER
!>         number of elements in input vector(s)
!>
```

*ZX*

```
!>          ZX is COMPLEX*16 array, dimension ( 1 + ( N - 1 )*abs( INCX ) )
!>
```

*INCX*

```
!>          INCX is INTEGER
!>         storage spacing between elements of ZX
!>
```

*ZY*

```
!>          ZY is COMPLEX*16 array, dimension ( 1 + ( N - 1 )*abs( INCY ) )
!>
```

*INCY*

```
!>          INCY is INTEGER
!>         storage spacing between elements of ZY
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

**Further Details:**

```
!>
!>     jack dongarra, 3/11/78.
!>     modified 12/3/93, array(1) declarations changed to array(*)
!>
```

Definition at line **80** of file **zswap.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.
