<!--
{
  "documentType" : "article",
  "framework" : "Swift",
  "identifier" : "/documentation/Swift/imported-c-and-objective-c-apis",
  "metadataVersion" : "0.1.0",
  "role" : "collectionGroup",
  "title" : "Imported C and Objective-C APIs"
}
-->

# Imported C and Objective-C APIs

Use native Swift syntax to interoperate with types and functions in C and Objective-C.

## Overview

You can access and use pieces of code written in C and Objective-C from within your
Swift code. After you import an Objective-C framework, a C library, or a header file,
you can work with Objective-C classes and protocols, as well as common C constructs,
functions, and patterns.

## Topics

### Swift and Objective-C in the Same Project

Access your Swift code from within your Objective-C codebase, and your Objective-C
code from Swift.

  <doc://com.apple.Swift/documentation/Swift/importing-objective-c-into-swift>

  <doc://com.apple.Swift/documentation/Swift/importing-swift-into-objective-c>

### Cocoa Frameworks

  <doc://com.apple.Swift/documentation/Swift/working-with-foundation-types>

  <doc://com.apple.Swift/documentation/Swift/working-with-core-foundation-types>

### Objective-C APIs

  <doc://com.apple.Swift/documentation/Swift/using-imported-lightweight-generics-in-swift>

  <doc://com.apple.Swift/documentation/Swift/using-imported-protocol-qualified-classes-in-swift>

### C APIs

  <doc://com.apple.Swift/documentation/Swift/using-imported-c-structs-and-unions-in-swift>

  <doc://com.apple.Swift/documentation/Swift/using-imported-c-functions-in-swift>

  <doc://com.apple.Swift/documentation/Swift/using-imported-c-macros-in-swift>



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)