小编cho*_*eem的帖子

c ++ - 如果在地图中用作键,如何获得对的第一个和第二个元素?

当我在地图中使用对作为关键时,我试图获得对的第一和第二元素.为了更好地澄清,请参阅下面的代码.这是我试过的

#include <bits/stdc++.h>
using namespace std;

int main() 
{
// your code goes here
map<pair<int,int>,int>mp;
int n;
cin>>n;
int a[n];
for(int i=0;i<n;++i)cin>>a[i];
int y=0;
for(int i=0;i<n;++i)
{
    mp.insert(make_pair(y,a[i]));
    y=a[i]+1;
}
int m;
cin>>m;
int q[m];
for(int i=0;i<m;++i)cin>>q[i];
for(int i=0;i<m;i++)
{
    int temp=q[i];
    for(map<pair<int,int>,int>::iterator it=mp.begin();it!=mp.end();++it)
    {
        if(((it->first)<=temp)&&((it->second)>=temp))
        cout<<mp->second<<endl;
    }

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

我想在这里获得关键的第一和第二要素.我怎么能这样做?

c++ maps std-pair

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

Codelite问题 - 未指定可执行文件,请使用'target exec

我刚刚在我的Windows 8.1中安装了codelite.它显示错误

  Debugger exited with the following error string:
   "No executable 
   specified,use 'target exec'"
Run Code Online (Sandbox Code Playgroud)

我搜索并发现了这个(另一个stackoverflow问题)我做的和那里提到的一样,但没有什么对我有用.我创建了一个新项目并选择了Simple executable(g ++)和GNU调试器作为默认调试器.任何人都可以帮助我.它还显示"程序退出并返回代码:4199040".

c++ debugging codelite

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

代码块中的复制/粘贴功能

我已经在我的Windows 8.1中安装了Code :: Blocks 13.12,但是在运行时在命令行中粘贴输入(我认为它被称为命令行)似乎不起作用.我必须输入整个输入才能获得输出.可以有谁告诉我如何解决这个问题?

PS: - 我已经绑定了ctrl + V以及右键单击并粘贴,但在我的情况下没有任何实际工作.

ide codeblocks

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

这是什么样的数组声明?

在解决练习题之后,我总是看着Red Coder的解决方案.今天我看到了一个我从未见过的阵列声明.他宣称阵列是这样的

 char a['  '],b['  '];
Run Code Online (Sandbox Code Playgroud)

请让我知道它是什么?

PS-这可能是重复的问题.我实际上尝试搜索它但找不到任何关于它的东西(可能是因为我不知道该找什么),如果它是重复的请关闭问题并给我一个链接.

c++ arrays

3
推荐指数
1
解决办法
57
查看次数

有哪些不同的初始化方法

有什么区别:

long long int flag=n-1; and long long int flag(n-1);
Run Code Online (Sandbox Code Playgroud)

这些东西是一样的吗?我已经看到了后一段时间,但对它没有正确的认识.

c++ variables initialization

0
推荐指数
1
解决办法
106
查看次数

strlen() 的替代方案是什么?

我发现人们建议不要使用strlen(),理由是它的时间复杂度不是O(1)。比我应该在字符数组中使用什么来知道良好时间复杂度的大小,除了

     s[i]!='\0' 
Run Code Online (Sandbox Code Playgroud)

c++ string

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