malloc和realloc数组提供意外输出

时间:2015-06-01 12:25:01

标签: c arrays malloc realloc

当输入为'1 2 3 4 5 6 7 8 9 10 11'时预期输出应与输入相同。然而输出是'1 2 3 4 5 6 7 8 9 10 -1850774484'。仅在输入的整数超过10时才会发生。我的realloc线出了什么问题

Connection  connection =
           DriverManager.getConnection("jdbc:db2://wcspocca-db.cloudapp.net:50001/db2inst1","vmadmin","password@123;");

1 个答案:

答案 0 :(得分:5)

realloc没有任何问题。您正在最后一个循环中打印一个额外的未初始化索引。通过更改

来修复它
for (i = 0; i <= size; i++)

for (i = 0; i < size; i++)

realloc的唯一问题是,您不会像对malloc那样检查它是否成功。另一个问题是你没有释放分配的内存。