标签: compilation

这个(auto && elem:v)语法是简单的C++吗?我应该使用什么编译器来编译它?

我曾经在12年前使用C++编写代码,但由于我的工作原因,我把它留给了其他更简单的语言.

我想更新我的知识并尝试编译这里提出的解决方案,只是为了尝试这种迭代向量的新方法.但遇到编译错误:

expected initializer before ‘:’ token

我不知道有可能避免显式声明迭代器,就像C++使用它一样(auto && elem : v).C++它的版本是什么?

b.cpp

#include <iostream>
#include <vector>
#include <utility>
#include <algorithm>
#include <string>
#include <set>

int main()
{
  std::vector<std::pair<std::string, std::string>> v
  {   {"handgun", "bullets"},
      {"turret", "bullets"}};

  std::cout << "Initially: " << std::endl << std::endl;
  for (auto && elem : v)
    std::cout << elem.first << " " << elem.second << std::endl;

  return 0;
}
Run Code Online (Sandbox Code Playgroud)

汇编

$ cc b.cpp  -std=c++0x  -o myprog
Run Code Online (Sandbox Code Playgroud)

错误

b.cpp:在函数'int …

c++ iterator compilation set

-5
推荐指数
1
解决办法
138
查看次数

如何在Ubuntu终端上安装cpp编译器

如何在Ubuntu终端上安装cpp编译器。系统显示“ * g++ * Pentium-builder Try: Sudo apt-get install 我已在 google 中搜索过。我无法得到完整的答案。

c++ compilation

-5
推荐指数
1
解决办法
3万
查看次数

识别Java类的Java应用程序

我需要编写一个识别java类的Java应用程序并打印出"这是一个Java类"如果该类有错误或来自另一种语言它打印出来"这不是Java类"

请帮忙.

建议和源代码将非常感谢.

java compilation

-7
推荐指数
1
解决办法
107
查看次数

给定堆栈和寄存器的状态,我们可以预测printf的未定义行为的结果

以下是类测验的一些简单C代码:

#include <stdio.h>

int main() {
  float a = 2.3;
  printf("%d\n", a);
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

编译并运行:

Apple LLVM版本6.1.0(clang-602.0.53)(基于LLVM 3.6.0svn)
目标: x86_64-apple-darwin14.5.0

这段代码的输出是undefined.我试图通过检查a调试器附近的内存(Xgdb中的命令)来预测输出.例如,当地址为ais时0x7fff5fbffb98,则附近的上下文&a如下:

0x7fff5fbffb98: 1075000115
0x7fff5fbffb9c: 0
0x7fff5fbffba0: 1606417336
0x7fff5fbffba4: 32767
0x7fff5fbffba8: -1754266167
0x7fff5fbffbac: 32767
0x7fff5fbffbb0: -1754266167
0x7fff5fbffbb4: 32767
Run Code Online (Sandbox Code Playgroud)

然后的输出printf1606417352.我知道使用不正确的说明符时的输出是未定义的.出于好奇,我预计这个未定义行为的输出与正在运行的堆栈或寄存器的某些内存有关,但我还没想出如何关联它.

那么哪个地址或寄存器用于设置此输出printf?换句话说,给定运行堆栈的状态以及来自所有寄存器的所有值,我们是否可以预测(如果是这样)这种未定义行为的输出?

c gcc compilation undefined-behavior

-7
推荐指数
2
解决办法
384
查看次数

什么是g ++和nvcc的选项-O3?

我是nvcc的新手,我见过一个库,用g ++和nvcc选项-O3进行编译.

CC=g++
CFLAGS=--std=c++11 -O3
NVCC=nvcc
NVCCFLAGS=--std=c++11 -arch sm_20 -O3
Run Code Online (Sandbox Code Playgroud)

什么是-O3在做什么?

c++ cuda compilation nvcc

-7
推荐指数
1
解决办法
1207
查看次数

标签 统计

compilation ×5

c++ ×3

c ×1

cuda ×1

gcc ×1

iterator ×1

java ×1

nvcc ×1

set ×1

undefined-behavior ×1