No. They're pointers, whose size is system-dependent and whose only compatible type is void*.
GeeksforGeeks
geeksforgeeks.org › c language › c-pointers
Pointers in C - GeeksforGeeks
They can be created by assigning NULL value to the pointer. A pointer of any type can be assigned the NULL value. This allows us to check whether the pointer is pointing to any valid memory location by checking if it is equal to NULL. ... The void pointers in C are the pointers of type void.
Published April 22, 2026
TutorialsPoint
tutorialspoint.com › cprogramming › c_pointers.htm
Pointers in C
To use the pointers in C language, you need to declare a pointer variable, then initialize it with the address of another variable, and then you can use it by dereferencing to get and change the value of the variables pointed by the pointer. You can use pointers with any type of variable such as integer, float, string, etc.
What is the datatype of pointer in c? - Stack Overflow
Bring the best of human thought and AI automation together at your work. Explore Stack Internal ... Integer and unsigned are not mutually exclusive. ... In fact, only integral types can be unsigned. Neither pointer types nor floating-point types can be unsigned. More on stackoverflow.com
A Basic Guide to Pointers in C Programming
Pointers aren't hard to use or understand, what is a pain is the sintax to use them More on reddit.com
Everything you need to know about pointers in C
"Everything you need to know", yet no mention of aliasing and alignment and related issues (type punning vs strict aliasing). More on reddit.com
ELI5: What are pointers in C? They are really confusing!
Pointers literally point to a location in memory. For comparison: Imagine variables as a box. When you assign to them, like a = 5; you are putting the value of 5 in the box. Similarly, when you use them, like printf("%d", a); you are just looking in the box to see what is inside. Pointers, instead, are like mailbox numbers. They don't store values like integers or characters or strings themselves, they just tell you where to look to find the container that actually stores the value. This is useful because sometimes multiple different locations in code want to modify the same number. So what you do is you pass around the pointer (the thing that points to the box to use), and everyone can edit whatever is at the pointer, and everyone else sees that change. More on reddit.com
Videos
08:04
C pointers explained👉 - YouTube
01:00
What are different types of pointers in c and c++ programming ...
Types of Pointers in C Language | MySirG
8.3 - Different Types of Pointers in C - Master C and ...
A Quick Introduction to C Pointers - YouTube
39:38
Types of Pointers in C with Examples | C Programming - YouTube
W3Schools
w3schools.com › c › c_pointers.php
C Pointers
In the example above, we used the pointer variable to get the memory address of a variable (used together with the & reference operator). You can also get the value of the variable the pointer points to, by using the * operator (the dereference operator):
Top answer 1 of 7
36
No. They're pointers, whose size is system-dependent and whose only compatible type is void*.
2 of 7
13
Pointers are of pointer type. If you're asking about how pointer values are represented in memory, that really depends on the platform. They may be simple integral values (as in a flat memory model), or they may be structured values like a page number and an offset (for a segmented model), or they may be something else entirely.
Yale University
cs.yale.edu › homes › aspnes › pinewiki › C(2f)Pointers.html
C/Pointers
The effect of p+n where p is a pointer and n is an integer is to compute the address equal to p plus n times the size of whatever p points to (this is why int * pointers and char * pointers aren't the same). Subtract one pointer from another. The two pointers must have the same type (e.g.
LinkedIn
linkedin.com › pulse › what-different-types-pointers-c-amr-abdel-fattah
What are the different types of pointers in c?
September 20, 2023 - Here are the commonly used pointer types in C: Null Pointer: A null pointer is a pointer that does not point to any memory location. It is typically represented by the value NULL or 0. Null pointers are often used to indicate that a pointer is not currently pointing to a valid memory location.
ScholarHat
scholarhat.com › home
Pointers in C: Types of Pointers
Pointers are variables that contain the memory address of another variable instead of a direct value. Such variables can be of type int, float, char, etc.
Published January 25, 2025
Wikipedia
en.wikipedia.org › wiki › Pointer_(computer_programming)
Pointer (computer programming) - Wikipedia
4 days ago - Primitive pointers are often stored in a format similar to an integer; however, attempting to dereference or "look up" such a pointer whose value is not a valid memory address could cause a program to crash (or contain invalid data). To alleviate this potential problem, as a matter of type safety, pointers are considered a separate type parameterized by the type of data they point to, even if the underlying representation is an integer.
SDSU
edoras.sdsu.edu › doc › c › pointers-1.2.2
Everything you need to know about pointers in C
You could put a different pointer in the foo_ptr box, and the box would still be foo_ptr. But it would no longer point to foo. The pointer has a type, too, by the way. Its type is int. Thus it is an ‘int pointer’ (a pointer to int). An int **’s type is int * (it points to a pointer to int). The use of pointers to pointers is called multiple indirection.
Emblogic
emblogic.com › blog › 12 › what-are-the-different-types-of-c-pointers
What are the different types of C pointers? | EmbLogic
NULL Pointer Dangling Pointer Generic Pointers Wild Pointer Complex Pointers Near Pointer Far Pointer Huge Pointers ... Literal meaning of NULL pointer is a pointer which is pointing to nothing. NULL pointer points the base address of segment. ... int *ptr=(char *)0; float *ptr=(float *)0; ...
C# Corner
c-sharpcorner.com › article › pointers-in-C-Sharp
Pointers In C#
June 6, 2023 - From any pointer type to sbyte, byte, short, ushort, int, uint, long, ulong types. ... char c = 'R'; char *pc = &c; void *pv = pc; // Implicit conversion int *pi = (int *) pv; // Explicit conversion using casting operator · In an un-safe context, the ++ and - operators can be applied to pointer variable of all types except void * type.
Reddit
reddit.com › r/programming › a basic guide to pointers in c programming
r/programming on Reddit: A Basic Guide to Pointers in C Programming
December 19, 2023 - The same for the address of operator being overloaded with binary and as well as (in C++) pass by reference, and more loosely part of the && operator. Needlessly messy. ... Pascal (2 years older than C) uses ^ for declaring and dereferencing pointers. Declarations are separate from normal code, so there's no ambiguity. @ is used to get a pointer value (i.e. an address)... var p : pointer = NIL; // typeless pointer, initialized i : array[0..3] of byte; b : ^byte; // "pointer to byte" begin b := @i[2]; // assign target b^ := 4; // assign value Inc(b); // advance by sizeof(target) b^ := 5; // assign value end;
Internshala
trainings.internshala.com › home › programming › data structures in c programming: beginner-friendly guide with examples
What are Data Structures in C: Types, Uses, and Examples
March 19, 2026 - They act as the building blocks for creating more complex structures. Each primitive data type is designed to store a single value at a time. There are 4 types of primitive data structures in C: ... Pointers: They store other special variables, handle dynamic memory, and create advanced data ...
Go
go.dev › doc › effective_go
Effective Go - The Go Programming Language
The built-in function make(T, args) serves a purpose different from new(T). It creates slices, maps, and channels only, and it returns an initialized (not zeroed) value of type T (not *T). The reason for the distinction is that these three types represent, under the covers, references to data structures that must be initialized before use. A slice, for example, is a three-item descriptor containing a pointer to the data (inside an array), the length, and the capacity, and until those items are initialized, the slice is nil.
GNU
gnu.org › software › c-intro-and-ref › manual › html_node › Pointers.html
Pointers (GNU C Language Manual)
Next: Structures, Previous: Type Size, Up: GNU C Manual [Contents][Index] Among high-level languages, C is rather low-level, close to the machine. This is mainly because it has explicit pointers. A pointer value is the numeric address of data in memory. The type of data to be found at that ...
Wikipedia
en.wikipedia.org › wiki › C_(programming_language)
C (programming language) - Wikipedia
November 10, 2001 - There are built-in types for integers of various sizes, both signed and unsigned, floating-point numbers, and enumerated types (enum). Integer type char is often used for single-byte characters. C99 added a Boolean data type. There are also derived types including arrays, pointers, records (struct), and unions (union).