c++ - “考特<
cout<<count<<endl;
灵魂会根据条件提供输出,但它没有打印任何东西,导致这种结果的代码中的故障/错误/缺陷是什么?这是我的第一个问题,如果我不能完全理解,对不起。
我使用了以下代码,我无法理解这里发生了什么。这是一个简单的输入输出问题。输出为我们提供了有关匹配两个团队
问题描述
cout<<count<<endl;
灵魂会根据条件提供输出,但它没有打印任何东西,导致这种结果的代码中的故障/错误/缺陷是什么?这是我的第一个问题,如果我不能完全理解,对不起。
我使用了以下代码,我无法理解这里发生了什么。这是一个简单的输入输出问题。输出为我们提供了有关匹配两个团队制服的信息。
#include <stdio.h>
#include <iostream>
using namespace std;
main(){
int a;
cin>>a;
int **b;
b=new int*[a];
for (int i = 0; i < a; i++)
{
b[i]=new int[2];
for (int j = 0; j <2 ; j++)
{
cin>>b[i][j];
}
}
int count=0;
for (int i = 0; i < a*(a-1); i++)
{ for (int j = 0; j < a; j++)
if (b[i][0]==b[j][1])
count=count+1;
}
cout<<count<<endl;
for (size_t i = 0; i < a; i++)
{
delete b[i];
}
delete b;
}
输入:
3
1 2
2 4
3 4
输出不包含任何内容
spring 批处理使用两个不同的数据库
*我想在spring admin批处理作业中配置两个不同的数据库。但是在运行应用程序时,只有“POSTGRES”数据库正在配置。是否可以为 spring 批处理应用程序配置 2 个差异数据库。我为这两个数据库添加了属性。它正在配置并运行应用程序。但是当我试图从不同的数据库(辅助)中获取数据时。所以它无法映射表格
batch.jdbc.url=jdbc:postgresql://localhost:5432/glow
batch.jdbc.driver=org.postgresql.Driver
batch.jdbc.user=postgres
batch.jdbc.password=postgres
travel.batch.jdbc.driver=com.mysql.jdbc.Driver
travel.batch.jdbc.url=jdbc:mysql://localhost:3306/travel
travel.batch.jdbc.user=root
travel.batch.jdbc.password=root
我想配置并连接到两个数据库从两个数据库中获取数据以用于 spring 管理批处理作业项目中的不同批处理作业*
解决方案
您使用的数组越界,delete
什么时候应该delete[]
。代码中的注释:
#include <iostream> // use the correct headers
#include <cstddef>
// not recommended: https://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice
using namespace std;
int main() { // main must return int
size_t a; // better type for an array size
cin >> a;
int** b;
b = new int*[a];
for(size_t i = 0; i < a; i++) {
b[i] = new int[2];
for(size_t j = 0; j < 2; j++) {
cin >> b[i][j];
}
}
int count = 0;
std::cout << a * (a - 1) << "\n"; // will print 6 for the given input
for(size_t i = 0; i < a * (a - 1); i++) {
// i will be in the range [0, 5]
for(size_t j = 0; j < a; j++)
if(b[i][0] == b[j][1]) count = count + 1;
// ^ undefined behaviour
}
cout << count << endl;
for(size_t i = 0; i < a; i++) {
delete[] b[i]; // use delete[] when you've used new[]
}
delete[] b; // use delete[] when you've used new[]
}
推荐阅读
- input - Optaplanner 混合车辆、接送等的输入格式
- magento - Magento 自定义 ajax 购物车。购物规则不适用
- python - 如何在python中同步数据帧?
- android - 重复的 zip 条目 [classes.jar:android/support/v4/media/MediaBrowserCompat$MediaItem$1.class]
- android - 单击选项卡后重新加载选项卡内容
- java - 这个方法的解释?
- java - 在 xsd 模式中表示列表
- greenplum - 为什么在greenplum中,分区表使用nestedloop join,而非分区表使用hash join
- php - 如何动态构建文本区域?
- google-analytics - Google 跟踪代码管理器,跨浏览量的数据层
cout<<count<<endl;
灵魂会根据条件提供输出,但它没有打印任何东西,导致这种结果的代码中的故障/错误/缺陷是什么?这是我的第一个问题,如果我不能完全理解,对不起。
我使用了以下代码,我无法理解这里发生了什么。这是一个简单的输入输出问题。输出为我们提供了有关匹配两个团队
问题描述
cout<<count<<endl;
灵魂会根据条件提供输出,但它没有打印任何东西,导致这种结果的代码中的故障/错误/缺陷是什么?这是我的第一个问题,如果我不能完全理解,对不起。
我使用了以下代码,我无法理解这里发生了什么。这是一个简单的输入输出问题。输出为我们提供了有关匹配两个团队制服的信息。
#include <stdio.h>
#include <iostream>
using namespace std;
main(){
int a;
cin>>a;
int **b;
b=new int*[a];
for (int i = 0; i < a; i++)
{
b[i]=new int[2];
for (int j = 0; j <2 ; j++)
{
cin>>b[i][j];
}
}
int count=0;
for (int i = 0; i < a*(a-1); i++)
{ for (int j = 0; j < a; j++)
if (b[i][0]==b[j][1])
count=count+1;
}
cout<<count<<endl;
for (size_t i = 0; i < a; i++)
{
delete b[i];
}
delete b;
}
输入:
3
1 2
2 4
3 4
输出不包含任何内容
spring 批处理使用两个不同的数据库
*我想在spring admin批处理作业中配置两个不同的数据库。但是在运行应用程序时,只有“POSTGRES”数据库正在配置。是否可以为 spring 批处理应用程序配置 2 个差异数据库。我为这两个数据库添加了属性。它正在配置并运行应用程序。但是当我试图从不同的数据库(辅助)中获取数据时。所以它无法映射表格
batch.jdbc.url=jdbc:postgresql://localhost:5432/glow
batch.jdbc.driver=org.postgresql.Driver
batch.jdbc.user=postgres
batch.jdbc.password=postgres
travel.batch.jdbc.driver=com.mysql.jdbc.Driver
travel.batch.jdbc.url=jdbc:mysql://localhost:3306/travel
travel.batch.jdbc.user=root
travel.batch.jdbc.password=root
我想配置并连接到两个数据库从两个数据库中获取数据以用于 spring 管理批处理作业项目中的不同批处理作业*
解决方案
您使用的数组越界,delete
什么时候应该delete[]
。代码中的注释:
#include <iostream> // use the correct headers
#include <cstddef>
// not recommended: https://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice
using namespace std;
int main() { // main must return int
size_t a; // better type for an array size
cin >> a;
int** b;
b = new int*[a];
for(size_t i = 0; i < a; i++) {
b[i] = new int[2];
for(size_t j = 0; j < 2; j++) {
cin >> b[i][j];
}
}
int count = 0;
std::cout << a * (a - 1) << "\n"; // will print 6 for the given input
for(size_t i = 0; i < a * (a - 1); i++) {
// i will be in the range [0, 5]
for(size_t j = 0; j < a; j++)
if(b[i][0] == b[j][1]) count = count + 1;
// ^ undefined behaviour
}
cout << count << endl;
for(size_t i = 0; i < a; i++) {
delete[] b[i]; // use delete[] when you've used new[]
}
delete[] b; // use delete[] when you've used new[]
}
推荐阅读
- input - Optaplanner 混合车辆、接送等的输入格式
- magento - Magento 自定义 ajax 购物车。购物规则不适用
- python - 如何在python中同步数据帧?
- android - 重复的 zip 条目 [classes.jar:android/support/v4/media/MediaBrowserCompat$MediaItem$1.class]
- android - 单击选项卡后重新加载选项卡内容
- java - 这个方法的解释?
- java - 在 xsd 模式中表示列表
- greenplum - 为什么在greenplum中,分区表使用nestedloop join,而非分区表使用hash join
- php - 如何动态构建文本区域?
- google-analytics - Google 跟踪代码管理器,跨浏览量的数据层