A const pointer in programming refers to a pointer whose value, the address it holds, cannot be changed after initialization, ensuring the pointer always points to the same memory location. This is distinct from a pointer to a constant, where the data being pointed to cannot be modified through the pointer, but the pointer itself can point to different locations.