|
-
December 31st, 2003, 04:58 PM
#7
Junior Member
Re: C++ code not working right
Originally posted here by kryptonite0110
I wrote this code in interest of learning stdio.h somewhat fleuently... but it decided to be bugged on me... what may be the bug??
#include <stdio.h>
#include <stdlib.h>
#include <iostream.h>
int main()
{
FILE * bin;
char buffer[100];
bool test;
int a;
bin = fopen ("bin1.raw", "wb");
std::cin.getline(buffer, 100);
for (int a = 0; a < 100; a++)
{
putchar(buffer[a]);
}
for (int i = 0; i < 100; i++)
{
if (!test)
{
if (!buffer)
{
bool test = 1;
a = i;
i = 0;
}
}
else
{
if (i < a)
{
putchar(buffer[i]);
putc(buffer[i], bin);
}
}
}
fclose(bin);
system("PAUSE");
return 0;
}
Couple of pointers here:
1) You create a bool variable inside a loop. One should try to avoid doing this as much as possible. In doing this, you are recreating the variable everytime the loop runs through and are destroying it equal amounts of time as well. Also, you are not using the same bool as created earlier in your program. If you want to do that, you have to remove the bool and just say test=1.
2) Don't mix input streams. It is bad, very bad. Mixing input streams causes undefined behavior. Basically, your program can do really weird stuff if you mix.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
|