Solved

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

Posted on 2004-04-18
2
224 Views
Last Modified: 2010-04-01
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
Comment
Question by:daemian
2 Comments
 
LVL 17

Accepted Solution

by:
rstaveley earned 200 total points
Comment Utility
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
 

Author Comment

by:daemian
Comment Utility
right...so easy.I guess i stayed too much in front of the comp.thanks
0

Featured Post

Maximize Your Threat Intelligence Reporting

Reporting is one of the most important and least talked about aspects of a world-class threat intelligence program. Here’s how to do it right.

Join & Write a Comment

Written by John Humphreys C++ Threading and the POSIX Library This article will cover the basic information that you need to know in order to make use of the POSIX threading library available for C and C++ on UNIX and most Linux systems.   [s…
  Included as part of the C++ Standard Template Library (STL) is a collection of generic containers. Each of these containers serves a different purpose and has different pros and cons. It is often difficult to decide which container to use and …
The goal of the video will be to teach the user the concept of local variables and scope. An example of a locally defined variable will be given as well as an explanation of what scope is in C++. The local variable and concept of scope will be relat…
The viewer will learn how to pass data into a function in C++. This is one step further in using functions. Instead of only printing text onto the console, the function will be able to perform calculations with argumentents given by the user.

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

9 Experts available now in Live!

Get 1:1 Help Now