Другой ответ абсолютно верен, но я также хотел бы добавить, что, возможно, было бы неразумно проверять код ошибки вручную, код 200
- не единственный код, который означает успех.
Я бы порекомендовал использовать опцию libcurl CURLOPT_FAILONERROR , которая при активации заставит libcurl учитывать 400
и 500
-категорию, классифицирует ошибку запроса и не вернет CURLE_OK
из выполнения.