The incident happened around 10:30 p.m. Monday in a parking lot on Saint-Germain Street.
Christine Coulombe, a spokesperson for the Quebec provincial police, says the 33-year-old suspect was swearing and shouting when the police officer approached his vehicle.
The suspect became violent and police officers used pepper spray before handcuffing him. It's during this altercation that the policeman was stabbed in the chest, said Coulombe.
It is only after handcuffing the suspect that the police officer, 39, realized he was injured himself.
The officer was in critical condition Tuesday in a Quebec City hospital.
Coulombe said the suspect is known to police and suffers from a mental illness. He is expected to appear in court today.