c++-字符数组连接为整型,输出非预期问题

问题描述

字符数组连接为整型,输出非预期问题
从文件中读取数据,在连接成整型,头一二个没问题,第三个就全是非预期的数值,求解
文件读取查不出什么问题。
char dicii[256*sizeof(int)] = {0};
char dici1[256][sizeof(int)] = {0};
int dici[256] = {0};
//.........省略
fin.seekg(0std::ios::cur);
fin.read(cpq3*sizeof(long long)); //没问题
fin.read(dicc256); //没问题
fin.read(dicii256*sizeof(int));
for(int i=0t=0;i<3;i++){
for(int j=0;j<sizeof(long long);j++){
cpq1[i][j] = cpq[t];
t++;
}
}
for(int i=0;i<3;i++) icpq[i] = (long long)cpq1[i]; //这个输出正常
for(int i=0t=0;i<256;i++){
for(int j=0;j<sizeof(int);j++){
dici1[i][j] = dicii[t];
t++;
}
}
for(int i=0;i<256;i++) dici[i] = (int)dici1[i]; //连接后输出非预期

解决方案

dici[i]是二维数组,在输出时,数组移动的步长是一行,就是说先定位在数组的首地址,当循环继承进行时,会移动到下一行,依次如上移动

时间: 2024-09-17 04:53:47

c++-字符数组连接为整型,输出非预期问题的相关文章

oci 输出参数-OCI 怎么提取整型输出参数,这个参数是存储过程里返回的一个值,跟表里的字段没啥关系

问题描述 OCI 怎么提取整型输出参数,这个参数是存储过程里返回的一个值,跟表里的字段没啥关系 OCIStmtFetch()该怎么写呢,还是其他的方法. 这个输出参数是一个结果描述而已,如密码,用户名正确,返回1,错误返回0,跟表的字段没关系

string-javascript中如何将字符数组转为整型数组

问题描述 javascript中如何将字符数组转为整型数组 在javascript中,有一段Url代码,格式类似X#Y,其中X部分是一个网站,Y部分是一串数组,用;隔开,我用Url.split("#")[1].split(";")来读取出来的数据,断点测试出来的结果,读出来的这段数组默认是string类型的,我想转为int的,代码应该怎么写? 解决方案 var a = Url.split("#")[1].split(";");

c语言-两个一维数组相乘,每组数组有五个整型元素

问题描述 两个一维数组相乘,每组数组有五个整型元素 两个一维数组对应元素相乘,每组有5个整型元素,输出乘积,不知道怎么做 解决方案 #include <stdio.h> #include <stdlib.h> void main() { int a[5],b[5],c[5],i; printf("输入数组a:n"); for( i = 0;i < 5;i++) { scanf("%d",&a[i]); } printf(&quo

c++-编程实现两字符串的连接。要求使用字符数组保存字符串,不要使用系统函数。

问题描述 编程实现两字符串的连接.要求使用字符数组保存字符串,不要使用系统函数. 编程实现两字符串的连接.定义字符数组保存字符串,在程序中提示用户输入两个字符串,实现两个字符串的连接,最后用cout语句显示输出.用cin实现输入,注意,字符串的结束标志是ASCII码0,使用循环语句进行字符串间的字符拷贝. #include using namespace std; int main() { char a[500]; char b[500]; cin>>a; for(int i=0;i if(

C语言中交换int型变量的值及转换为字符数组的方法_C 语言

不使用其他变量交换两个整型的值: #include <stdio.h> void main(){ int a = 3; int b = 4; a = a ^ b;//使用异或交换 b = b ^ a; a = a ^ b; printf("%d, %d\n", a, b); a = a - b;//使用加减交换 b = a + b; a = b - a; printf("%d, %d\n", a, b); a ^= b ^= a ^= b; printf

c语言-一个未满的整型数组,怎么求真实元素个数?

问题描述 一个未满的整型数组,怎么求真实元素个数? 比如一个整型数组:int a[10]; 这个数组没有存放满10个数.我怎么知道其中的数据元素个数? 解决方案 基本上不可能知道. 如果你一定想知道,可以试试给数组赋一个不会用到的初值,如:0xFFFFFFFF,或者 零. 然后对数组进行循环统计,看看哪些下标不再是初值,就是实际的元素.然后,统计一下个数即可. 解决方案二: 数组长度声明后每个元素有默认初始值,为0,没有所谓的存满吧(刚刚学习不知道对不对C#).如果你知道你的赋值都不为0,可以通

c语言-从键盘输入每小时登录网络的用户数到一个有24个整型元素的数组中。编程以如下格式显示一个报告

问题描述 从键盘输入每小时登录网络的用户数到一个有24个整型元素的数组中.编程以如下格式显示一个报告 从键盘输入每小时登录网络的用户数到一个有24个整型元素的数组中.编程以如下格式显示一个报告: ? 时间? 登录人数? 所占比例 ?0:00 – 1:00 ?1 0.3 ?1:00 – 2:00 ?2 0.7 ?- ?10:00 - 11:00 ?27 9.0 ?11:00 - 12:00 ?28 9.3 - ?23:00 - 0:00 ?8 2.7 ?最大登录人数28发生在11:00到12:00

有一个关于整型指针二维数组的问题

问题描述 有一个关于整型指针二维数组的问题 int x[4][4]y[4][4]z=0o=0;//z表示的是当前矩阵中的非零数字的数量,z为16则说明数字排满了,本局输了 //o表示最大数字的值,本例设定的是1024typedef int row[4]; //row代表具有4个元素的整型数组row p=x *q=y;//P是整型指针数组,有4组,每组有4个元素.p[1]=x[1]=(x+1) 这是别人写的2048源码的一部分,想问一下,这里为什么要先定义一个有4个元素的整型数组,然后再用这个去定

数组转化-含有汉字的数组怎么转化为整型数组

问题描述 含有汉字的数组怎么转化为整型数组 char carnode[9]="黑A47J65"; int keynumber[9]; Into()函数将carnode数组中的数据全部转化为整型数据存入数组keynumber中,问汉字占两个字节,该如何实现转化较为有效便捷?谢谢 解决方案 wchar_t carnode[9]="黑A47J65"; int keynumber[7]; int x = (int)carnode[i]; keynumber[0] = x /