2 qq 33460068 qq_33460068 于 2017.09.15 15:40 提问

在使用read读取数据时,下标异常 5C
    int j = 0;
        QVecter<RAW>PingHeader;
    char *Navigation_strings;
        infile.read((char*)&Navigation_strings,PingHeader[j].navigation_strings_size);

        char *Attitude_strings;
        infile.read((char*)&Attitude_strings,PingHeader[j].attitude_strings_size);

        char *Heading_strings;
        infile.read((char*)&Heading_strings,PingHeader[j].heading_strings_size);
        在调试时发现,运行到第二个infile.read是j的值会变化,j会变成一个很多大的数,不知道怎么处理,求帮助

3个回答

PFT_bin
PFT_bin   2017.09.15 15:51

volatile int j=0; 试一下看看

qq_33460068
qq_33460068 不行,j还是在变化
10 个月之前 回复
PFT_bin
PFT_bin   2017.09.15 16:09

const int j=0;

qq_33460068
qq_33460068 不行,我我这只是给出了一个循环,下个循环j要加一,不能const
10 个月之前 回复
qumashao7049
qumashao7049   2017.09.15 16:29

如果不想j值发生变化,在定义j的是用fianl修饰

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
SqlDataReader 的用法
SqlDataReader形成的是数据流,并且数据流是以只进且只读的形式,所以我们经常在检验某一数据是否存在时使用.   语法:SqlDataReader reader = cmd.ExecuteReader(); 不直接使用构造函数;   FieldCount属性:获取当前行中的字段数;   Close()方法:关闭SqlDataReader 对象;   Read()方法:读取下一条记录
NYOJ+Map的使用利用数组下标访问
点击打开链接#include #include #include #include #include #include using namespace std; int main() { int t; cin>>t; string str; while(t--) { int n; cin>>n; cin>>st
C#编程:NetworkStream类的Read
今天研究了一下NetworkStream 类,NetworkStream 类提供在阻止模式下通过 Stream 套接字发送和接收数据的方法。以下来自msdn: NetworkStream 类提供在阻止模式下通过 Stream 套接字发送和接收数据的方法。可以在同步和异步数据传输时使用 NetworkStream 类。 若要创建 NetworkStream,必须提供连接的 Socket。 
C语言编译器不检查数组下标越界 困扰的很长时间
C语言的编译器是不检查下标越界的,以前知道这个问题,可是没有想过是什么原因?  总结如下:   1,不检查下标是否越界可以有效提高程序运行的效率,因为如果你检查,那么编译器必须在生成的目标代码中加入额外的代码用于程序运行时检测下标是否越界,这就会导致程序的运行速度下降,所以为了程序的运行效率,C/C++才不检查下标是否越界。   2,不检查下标是为了给程序员更大的空间,也为指针操作带来更
注意在使用ArrayList进行for循环遍历的时候不能直接移除下标
public static void main(String[] args) { List<String> strings = new ArrayList<>(); for (int i = 0; i < 10; i++) { strings.add("1"); } for (String s : strings
java异常的写法 及一些常见的异常问题
1 OutputStreamWriter out = ... 2 java.sql.Connection conn = ... 3 try { // ⑸ 4  Statement stat = conn.createStatement(); 5  ResultSet rs = stat.executeQuery( 6   "select uid, name from user"); 7
Java之Socket上的Read操作阻塞问题
从Socket上读取对端发过来的数据一般有两种方法: 1)按照字节流读取 [java] view plain copy BufferedInputStream in = new BufferedInputStream(socket.getInputStream());   int r = -1;   List l = new LinkedL
read函数接收socket数据实例
本节将讲解一个read函数读取数据的实例。在程序中,监听一个端口,如果有客户端连接这个端口则接受这个连接,然后用read函数读取远程主机发送的数据,输出这些数据以后结束这个程序。
Spring+Mybatis+BoneCP向数据库发出请求时出现:Io 异常: Socket read timed out
小弟使用的是bonecp管理数据库连接,数据库采用oracle。在运行时,如果使用了3个以上的session连接,就会出现如下错误。Io 异常: Socket read timed outHTTP Status 500 - Request processing failed; nested exception is org.apache.ibatis.exceptions.PersistenceE...
字符流读取数据
字符流读取数据