Ir ao conteúdo
  • Cadastre-se

C++ C++ no Visual Studio Code


Posts recomendados

quando voce criar um novo projeto selecione a opção aplicativo de console.tambem é importante observar algumas coisas que são diferentes de alguns compiladores comuns como alguns _s que precisam ser adicionados entre outros detalhes também não utilizo muito e precisa de adaptação.

Link para o comentário
Compartilhar em outros sites

4 horas atrás, Cássio de Melo Azevedo disse:

Pessoal, baixei o Visual Studio Code para utilizá-lo como IDE de C++, mas estou com dificuldades. Eu instalo as extensões "C/C++" e " C/C++ Complile & Run", mas  mesmo assim não consigo fazer funcionar a programação.
Alguém poderia ajudar?

 

Mas que compilador vai usar? Leu a documentação? Vai usar no Windows? Windows 10 recente?  ou no Linux ou no Mac? Vai compilar os programas no Windows pro Windows ou no Linux do Windows 10?

 

O ambiente do VSCode é muito moderno e bonito. E tem umas funcionalidades fora do normal, como usar o debugger numa aplicação rodando no Linux sentado na máquina Windows com os arquivos no Windows e o código rodando no Linux.

 

Mas não inclui um compilador. Você precisa instalar um, ou o Visual Studio Build Tools. E precisa configurar dois arquivos ao menos, e é meio automático, lá em Terminal | ... Como aparece aqui


image.png.1742bbd93045aa8034bac932ae281f27.png

 

Esses no fim da lista. E aí pode escolher o que fazer na lista. Ou apertar F5 para rodar no debugger e Control F5 para rodar no modo normal. Claro, vai gerar o .exe e você roda em qualuqer lugar
 

image.png.08e0394cf337a44fd2e6ee2a6610374a.png

 

Veja nesse caso a máquina tem dois compiladores disponíveis. 

Veja o que diz na documentação
 

image.png.ab9947de9cbee4e183f9e96d7fccf1f8.png

 

Se você não usa Visual Studio e não tem um outro compilador instalado, pode instalar o da MicroSoft em https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2019

 

Link para o comentário
Compartilhar em outros sites

Em 16/04/2020 às 07:45, herbertbahia disse:

tambem é importante observar algumas coisas que são diferentes de alguns compiladores comuns como alguns _s que precisam ser adicionados entre outros detalhes também não utilizo muito e precisa de adaptação

 

Não é essencial usar as versões "seguras" como scanf_s() ou printf_s() com esses compiladores. Pode desabilitar essas safe versions nas opções do compilador ou usando um simples define no início de seus programas

#define _CRT_SECURE_NO_WARNINGS

como sugere o compilador claramente em toda linha em que use uma versão não safe dessas rotinas...

error C4996: 'scanf': This function or variable may be unsafe.
 Consider using scanf_s instead. 
To disable deprecation, use _CRT_SECURE_NO_WARNINGS. 
See online help for details.
1>Done building project "ch-201704pa.c.vcxproj" -- FAILED.

Claro que a mensagem aparece em português se tiver instalado a versão em português do software.

 

Basta ler o que está escrito lá. Vai repetir a MESMA mensagem para cada função, toda vez. 

 

Mas nem sei contar quantas vezes ajudei pessoas a portar programas do linux em casos em que elas sequer leram a declaração das funções e apenas acrescentaram um _s em todas as chamadas porque segundo elas "a p$%%a da Microsoft exige"... Não exige.

 

Esse ambiente é o padrão da indústria e de muitas universidades e centros de pesquisa. Todas as grandes companias como bancos e instituições financeiras para as quais já trabalhei usam Visual Studio. E a JPL. E a NASA. E a Microsoft ;) E a Adobe. 

 

Para comparar, apesar de eu ter me prometido que não ia fazer isso em computadores que eu uso, eu instalei outro dia Dev C++ e code::Blocks numa máquina e descobri por exemplo que o padrão deles ao instalar é o C de 1989 e o C++ de 1998. E as versões de IDE são muito antigas e raramente atualizadas. 

 

IntelliJ, Eclipse ou Netbeans são muito bons, por outro lado. Então há opções até 

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

Você não disse ainda qual versão de compilador está usando... Já resolveu?

 

Esqueci de reforçar o lance de que se está usando o compilador da Microsoft deve chamar o Code a partir de um Developer Prompt para o sistema ajeitar o acesso aos diretórios de compilação. Claro que de qualquer forma você precisa de um compilador porque esse ambiente é como o Eclipse, o code::Blocks e outros. É um ambiente em volta de um ou mais compiladores.

 

O da MS você instala ou instalando o Visual Studio ou o kit C++ Build Tools que inclui o compilador. Qualquer um dos dois vai te dar um atalho para abri o Developer Prompt. Está bem documentado aqui: https://code.visualstudio.com/docs/cpp/config-msvc

 

Um exemplo para uma máquina que tem duas versões de gcc e o compilador da Microsoft. Em Terminal | Run Task aparece
 

image.png.52d042a66c427f28f1f7a695c4ed8ae2.png

 

E você escolhe o que quer fazer no menu. Claro que com o programa aberto pode só clicar no > ou F5 e o programa repete o que você usou da última vez

 

Essas ações estão em um único arquivo, o tal launch.json e você pode editar aí mesmo no editor claro. E configurar o que quiser, como rodar um makefile, compilar todos os cpp, chamar um carro do Uber ou pedir um lanche

 

Eis o arquivo desse exemplo

{
    "version": "2.0.0",
    "tasks": [
        {
            "type": "shell",
            "label": "Microsoft C/C++ Build do programa ativo",
            "command": "cl.exe",
            "args": [
                "/Zi",
                "/EHsc",
                "/Fe:",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "${file}"
            ]
        },
        {
            "type": "shell",
            "label": "Microsoft C/C++: Não gera EXE mostra codigo assembler",
            "command": "cl.exe",
            "args": [
                "/Zi",
                "/FA",
                "/c",
                "/EHsc",
                "/Fe:",
                "${fileDirname}\\${fileBasenameNoExtension}.exe",
                "${file}"
            ]
        },
        {
            "type": "shell",
            "label": "(C++) Gera o programa ativo usando o gcc 5.1.0",
            "command": "C:\\Program Files (x86)\\CodeBlocks\\MinGW\\bin\\g++.exe",
            "args": [
                "-g",
                "-v",
                "-std=c++17"
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "C:\\Program Files (x86)\\CodeBlocks\\MinGW\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build"
        },
        {
            "type": "shell",
            "label": "(C++) Gera o programa ativo usando o gcc 8.2.0",
            "command": "C:\\MinGW\\bin\\g++.exe",
            "args": [
                "-g",
                "-v",
                "-std=c++17"
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "C:\\Program Files (x86)\\CodeBlocks\\MinGW\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build"
        }
        {
            "type": "shell",
            "label": "(C) Gera o programa ativo usando o gcc 5.1.0",
            "command": "C:\\Program Files (x86)\\CodeBlocks\\MinGW\\bin\\g++.exe",
            "args": [
                "-g",
                "-std=c11"
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "C:\\Program Files (x86)\\CodeBlocks\\MinGW\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build"
        }
        {
            "type": "shell",
            "label": "(C) Gera o programa ativo usando o gcc 8.2.0",
            "command": "C:\\Program Files (x86)\\CodeBlocks\\MinGW\\bin\\g++.exe",
            "args": [
                "-g",
                "-std=c11"
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "C:\\Program Files (x86)\\CodeBlocks\\MinGW\\bin"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": "build"
        }
    ]
}

É só um formulário. E voce pode copiar para todas as pastas de seus programas o diretório .vscode que isso aí vai junto. Eu devia ter escrito isso da última vez.

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!