Перейти к содержанию

Последнее обновление:2026-10-12

Интерактивные C++ Jupyter Notebook

В Python мы можем с помощью Jupyter Notebook сразу видеть результат, например:

l = [1,2]
l
Непосредственный вывод:

[1,2]
А при использовании C++, например:

map<string, int> mp{
    {"one",   1},
    {"two",   2},
    {"three", 3},
    {"four",  4}
};
Если нужно вывести — приходится обходить в цикле; можно ли вывести результат напрямую?

so easy!!! Jupyter Notebook решает все проблемы, ха-ха~

Как писать на C++ в Jupyter?

На github есть репозиторий, показанный ниже:

https://github.com/QuantStack/xeus-cling

xeus-cling — это Jupyter-ядро для C++, основанное на интерпретаторе C++ и нативной реализации Jupyter-протокола xeus.

Сейчас поддерживаются Mac и Linux, но не Windows.

Установка тоже очень простая: сначала установите Anaconda и создайте в ней виртуальное окружение:

conda create -n cling
Переключаемся в него:

conda activate cling
Устанавливаем в новое окружение jupyter и notebook

conda install jupyter notebook
Устанавливаем xeus-cling с помощью conda-forge

conda install xeus-cling -c conda-forge
Чтобы ускорить установку, не забудьте настроить зеркало (источник) для Anaconda!

Проверяем, установилось ли ядро (kernel):

jupyter kernelspec list
Вывод:

python3    /home/xxx/anaconda3/envs/cling/share/jupyter/kernels/python3
xcpp11     /home/xxx/anaconda3/envs/cling/share/jupyter/kernels/xcpp11
xcpp14     /home/xxx/anaconda3/envs/cling/share/jupyter/kernels/xcpp14
xcpp17     /home/xxx/anaconda3/envs/cling/share/jupyter/kernels/xcpp17
Откройте Jupyter Notebook — и вы увидите ядро.

Запуск Jupyter Notebook:

jupyter-notebook

Как писать на C в Jupyter?

Достаточно установить c kernel!

Можно создать c kernel прямо в текущем окружении, а можно открыть новое и установить там; ниже — установка прямо в текущем окружении.

pip install jupyter-c-kernel
install_c_kernel
jupyter kernelspec list
Теперь вывод будет таким:

c          /home/light/anaconda3/envs/cling/share/jupyter/kernels/c
python3    /home/light/anaconda3/envs/cling/share/jupyter/kernels/python3
xcpp11     /home/light/anaconda3/envs/cling/share/jupyter/kernels/xcpp11
xcpp14     /home/light/anaconda3/envs/cling/share/jupyter/kernels/xcpp14
xcpp17     /home/light/anaconda3/envs/cling/share/jupyter/kernels/xcpp17
Запуск Jupyter Notebook:

jupyter-notebook

Похожие темы

Комментарии