Resuelva el problema de que el código C ++ de depuración de vscode en MAC no puede procesar la entrada

Lo que escribí antes: No he usado C/C++ para programar durante mucho tiempo. Esta vez, cuando estaba depurando el código C/C++ en vscode en una computadora MAC, descubrí que no podía ingresar declaraciones de entrada como como scanf y cin. Me remití a algunos tutoriales en línea. Me resultó un poco engorroso o difícil resolver mi problema. Por lo tanto, este artículo se utiliza para registrar la solución final. En primer lugar, es para registrarlo para que podamos resolverlo la próxima vez que lo encontremos. En segundo lugar, esperamos comunicarnos y discutir con todos.

1. Descripción del problema

Aquí hay un ejemplo simple de entrada y salida para ilustrar el problema que encontré. Cuando depuro, encuentro que la salida del programa está en la consola de depuración y no puedo realizar entradas aquí. (Es decir, la declaración correspondiente a scanf no se puede impulsar más).

Por favor agregue la descripción de la imagen.

Por lo tanto, necesito encontrar una manera de resolver el problema de no poder ingresar datos durante la depuración.

2. Solución

(Hay muchas soluciones, aquí elijo el método que creo que es más fácil de realizar)

Paso 1: descargue los complementos relevantes (este paso se cubrirá brevemente)

Instale la extensión CodeLLDB.

Insertar descripción de la imagen aquí

Paso 2: generar archivo ejecutable

Aquí puede ingresar el comando g++ directamente en la terminal o hacer clic directamente en el botón ejecutar en la esquina superior derecha de vscode.

Insertar descripción de la imagen aquí

Después de este paso, encontraremos que el archivo ejecutable se genera en el directorio actual. En este punto, podemos comenzar a depurar.
Insertar descripción de la imagen aquí
Paso 3: Depuración (modificar launch.jsonarchivos)

Presione fn+F5(se recomienda no seleccionar el botón de depuración en la esquina superior derecha para este método) y seleccione el depurador LLDB.

Insertar descripción de la imagen aquí

.vscodePuede ver que hay más carpetas en el directorio actual y launch.jsonlos archivos se crean automáticamente. (En este momento, la depuración directa informará un error/aún no puede manejar el problema de entrada)

Insertar descripción de la imagen aquí

Aquí necesitamos modificar dos lugares:

1. Utilice el terminal integrado para ejecutar y depurar el programa: agregue "terminal": "integrado",

2. Ejecute el archivo ejecutable con el mismo nombre en el directorio donde se encuentra el archivo actual: modifique el atributo del programa a: "${workspaceFolder}/${fileBasenameNoExtension}"

Como se muestra en la siguiente imagen, para facilitar la copia, pegue esta configuración aquí:

"configurations": [
        {
    
    
            "type": "lldb",
            "request": "launch",
            "name": "Debug",
            "terminal": "integrated",
            "program": "${workspaceFolder}/${fileBasenameNoExtension}",
            "args": [],
            "cwd": "${workspaceFolder}"
        }
    ]

Insertar descripción de la imagen aquí

En este punto, se completa la modificación. En este punto, presionamos fn+F5 nuevamente y descubrimos que la depuración puede procesar nuestras declaraciones de entrada.

Insertar descripción de la imagen aquí

3. Cómo solucionar el problema de tener que modificar el archivo de configuración cada vez

En los pasos anteriores, se resolvió el problema de que la depuración no podía procesar la entrada en el proyecto actual. Pero si cambia un proyecto, aún tendrá que realizar las modificaciones de configuración anteriores nuevamente, lo cual es más problemático. Por lo tanto, considere resolver el problema de tener que volver a modificar el archivo de configuración cada vez. (Un método más simple es guardar el archivo de configuración como una plantilla y copiarlo en el nuevo proyecto). Aquí hay un método más conveniente: configure un archivo predeterminado en la configuración de usuario global de VSCode launch.json.

Utilice la tecla de acceso directo command+,para abrir la configuración. Haga clic en settings.json, este archivo se utiliza para almacenar la configuración de usuario global para VS Code.

Insertar descripción de la imagen aquí

Busque "launch"la propiedad nombrada, su valor es un objeto que contiene launch.jsonel contenido del archivo que queremos configurar.

Insertar descripción de la imagen aquí

Según nuestro contenido en esta ocasión, se modifica de la siguiente manera:

Insertar descripción de la imagen aquí

Después de eso, incluso si creamos un nuevo proyecto, podemos procesar la entrada sin reconfigurar la depuración.

Nota personal: Python es un lenguaje de tipos interpretados y lo hace de manera diferente. Después de un poco de procesamiento, al depurar en esta computadora, simplemente presione el botón de depuración en la esquina superior derecha y seleccione depuración de Python para depurar.

Supongo que te gusta

Origin blog.csdn.net/kikiLQQ/article/details/132888160
Recomendado
Clasificación