---
title: "init(characters:length:)"
framework: foundation
role: symbol
role_heading: Initializer
path: "foundation/nsstring/init(characters:length:)"
---

# init(characters:length:)

Returns an initialized NSString object that contains a given number of characters from a given C array of UTF-16 code units.

## Declaration

```swift
convenience init(characters: UnsafePointer<unichar>, length: Int)
```

## Parameters

- `characters`: A C array of UTF-16 code units; the value must not be NULL. important: Raises an exception if characters is NULL, even if length is 0.
- `length`: The number of characters to use from characters.

## Return Value

Return Value An initialized NSString object containing length characters taken from characters. The returned object may be different from the original receiver.

## See Also

### Creating and Initializing Strings

- [init()](foundation/nsstring/init().md)
- [init(bytes:length:encoding:)](foundation/nsstring/init(bytes:length:encoding:).md)
- [init(bytesNoCopy:length:encoding:freeWhenDone:)](foundation/nsstring/init(bytesnocopy:length:encoding:freewhendone:).md)
- [init(charactersNoCopy:length:freeWhenDone:)](foundation/nsstring/init(charactersnocopy:length:freewhendone:).md)
- [init(string:)](foundation/nsstring/init(string:)-210xa.md)
- [init(format:arguments:)](foundation/nsstring/init(format:arguments:).md)
- [init(format:locale:arguments:)](foundation/nsstring/init(format:locale:arguments:).md)
- [init(data:encoding:)](foundation/nsstring/init(data:encoding:).md)
- [localizedUserNotificationString(forKey:arguments:)](foundation/nsstring/localizedusernotificationstring(forkey:arguments:).md)
- [localizedStringWithFormat(_:_:)](foundation/nsstring/localizedstringwithformat(_:_:).md)
- [unichar](foundation/unichar.md)
