我尝试使用ifstreamwhile循环来获取每个值.但是,当我尝试它时,没有任何反应.为什么?
std::string line;
std::getline(cin, line);
std::ifstream stream(line);
while(stream){
std::cout << stream.get();
}
Run Code Online (Sandbox Code Playgroud) 我想将std :: map的前N个元素复制到另一个地图.我试过copy_n但是失败了.我怎样才能做到这一点?
#include <iostream>
#include <map>
#include <algorithm>
#include <iterator>
using namespace std;
int main(){
map<int,int> Map;
for ( int i=0;i<10;i++) Map[i]=i*i;
map<int,int> Map2;
std::copy_n(Map.begin(), 5, Map2.end());
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我需要处理一个数组类型为float64_t或uint32_t的数组.我想创建一个函数,以便以这种方式将指向给定数组的指针作为函数的参数:
void func_name(array_type* ptr_name, int count, data_type x)
//x can be float64_t or uint32_t
Run Code Online (Sandbox Code Playgroud)
如您所见,事先我不知道指针的数据类型.我如何在C++中解决这个问题?
在英特尔文档中我已经读过,对于Intel x86 64位机器,C数据类型'long'的大小是8字节.但是,当我在我的计算机上运行这个简单的代码时,它有intel(R)core(TM)i3 - 64位处理器:
printf("size of long, is %d", sizeof(long));
控制台输出为4(而不是8)!任何人都可以解释这种差异或相同的原因.谢谢
我正在尝试用5000个随机数填充向量。每个数字都是整数。但是我想知道为什么rand()只给出正整数,为什么它从不给出整数可以容纳的最大值。有什么理由吗?
#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
int main()
{
unsigned seed = time(0);
srand(seed);
vector<int> vect(5000);
for (int i = 0; i < vect.size(); i++)
{
vect[i] = rand();
}
return 0;
}
Run Code Online (Sandbox Code Playgroud) 以下代码会导致无限循环吗?
x=0;
y=0;
while(x<100)
{
minnum=100;
maxnum=100;
while(y<150)
{
if(random[x][y]<minnum)
{
minnum=random[x][y];
minX=x;
minY=y;
y++;
}
else if(random[x][y]>maxnum)
{
maxnum=random[x][y];
maxX=y;
maxY=y;
y++;
}
}
x++;
y=0;
}
Run Code Online (Sandbox Code Playgroud) coinitialize(Null);
{
_In_opt_ LPVOID pvReserved, //parameters
_In_ DWORD dwCoIn
Coinitializeex(Null);
{
_In_opt_ LPVOID pvReserved,
_In_ DWORD dwCoInit
}
Run Code Online (Sandbox Code Playgroud)
你能简单解释一下吗?
编辑:请忽略这个问题.我意识到我是一个白痴,非常友好和乐于助人的人指出iostream不是C而是C++库.
我遇到了一个非常奇怪的问题.
我有一个完全工作的程序(大约1000行).我需要
#include <iostream>
Run Code Online (Sandbox Code Playgroud)
当我这样做时,uint32_t的typedef会中断.
它被定义为这样
typedef unsigned __int32 uint32_t;
Run Code Online (Sandbox Code Playgroud)
我正在使用Visual Studio 2017.这是它给出的错误
\ vc\tools\msvc\14.15.26726\include\cstdlib(19):错误C2061:语法错误:标识符'noexcept'
当我将鼠标悬停在现在的下划线uint32_t时,会出现以下情况:
uint32_t变量"uint32_t"不是类型名称
评论这条线
#include <iostream>
Run Code Online (Sandbox Code Playgroud)
该程序按预期编译和运行.
是什么赋予了?
边题.我使用uint32_t的原因是为了保证我的变量是32位长,因为我正在进行大量的位操作.使用unsigned int会安全吗?
这是我包括的所有内容的列表:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <iostream>
typedef unsigned __int32 uint32_t;
Run Code Online (Sandbox Code Playgroud)