• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 236
  • Last Modified:

simple but strange problem(plz help,a bit urgent)

I want to code a program so as to be able to read the contents(which is just numbers) of a file.This is what i have done:

--------------------------------------------------
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <fstream>
using namespace std;
int f,o,u1,u,w1,w2,w3,w4,w5,w6,w7,w8,w9,w10,w11,w12,count,v1,v2,v,l1[20],l2[20],l3[20],mx1[4],my1[4],mz1[4],m,z,q,y,int1,int2,int3,i1,j1,q1,q2,q3,q4,ux,uy,uz,rx,ry,rz,mx ,mz ,my ,txx, txy, txz  ,tyx, tyy, tyz , tzx, tzy, tzz ,hz ,hy ,hx ,Jxx ,Jyy ,Jzz ,Jxy, Jxz ,Jyx ,Jyz ,Jzx ,Jzy;
int a[3][3];
unsigned long c[3][1];
int d1[100][100];
int d2[100][100];
int d3[100][100];
int h[3][1];
int b[3][1];
int f1,f2,i,l,j,k,t,A=2,B=2,n;  
int temp1,temp2,temp3;    

int main()

{
    ifstream  ifs ("inp.txt");
    ifstream in_stream1;
      ifstream in_stream2;
      ifstream in_stream3;
      ofstream out_stream1;
      ofstream out_stream2;
      ofstream out_stream3;
      FILE *stream1,*stream4;
    stream1 = fopen( "infile2.txt", "r+" );
    stream4  = fopen( "outfile1.txt", "r+" );
      in_stream1.open("infile2.txt");
    if (in_stream1.fail())
    {
        cout << "Input file opening failed.\n";
        exit(0);
    }
      
      out_stream1.open("outfile1.txt");
    if (out_stream1.fail())
    {
        cout << "Input file opening failed.\n";
        exit(0);
    }

for (f = 0;f <= 11; f++)
{
in_stream1 >> c[f][0];
cout << c[f][0];
}
out_stream1 << endl;
cout << endl;

return(0);       
        
        
    in_stream1.close();
      out_stream1.close();
    }
 
--------------------------------------------------

and this is the file's contents:

3
6
5
8
6
7
4
5
2
3
1
9

with these specific numbers the program can only read six or seven characters!!But with other numbers e.g:

2
5
4
3
5
4
1
5
2
7
2
4

it can read all of them.What do you think the problem is?
I am using VC++ 6.0
0
daemian
Asked:
daemian
1 Solution
 
rstaveleyCommented:
You need to simplify this a great deal.

> unsigned long c[3][1];

You have a 2D array here dimensioned 3 x 1

>for (f = 0;f <= 11; f++)
>{
>in_stream1 >> c[f][0];
>cout << c[f][0];
>}

When f is > 2, this should go kaboom.

0
 
daemianAuthor Commented:
right...so easy.I guess i stayed too much in front of the comp.thanks
0

Featured Post

[Webinar On Demand] Database Backup and Recovery

Does your company store data on premises, off site, in the cloud, or a combination of these? If you answered “yes”, you need a data backup recovery plan that fits each and every platform. Watch now as as Percona teaches us how to build agile data backup recovery plan.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now