C++ :: Newline Character Not Being Picked Up In A Conditional Statement
Jan 15, 2014
I have the following code:
Code:
while (lineread != "
")
{
getline(ifs,lineread);
}
In essence, it reads an input file, line by line until it hits a line only containing a newline character. So if the input text file is:
27
GC0123456
102905908801170--
2034068010201360
3039077011601400
4043086012901400
504709401400
6051010101400
[code]....
It should exit the while loop after hitting line 6. What happens however is that it goes into a perpetual loop and doesnt exit the while loop upon reading line 6.
What I did was changed the code to:
Code: while (lineread != "*")
{
getline(ifs,lineread);
} and the input file to:
27
GC0123456
102905908801170--
2034068010201360
3039077011601400
4043086012901400
[code]....
and finally it stops after line 6. In this case, merely changing the " " conditional character to a simple asterisk character "*" fixes the problem.
However I wish to keep the input text file as is with the newlines, so how do I make it exit the while loop when detecting a as a line?
View 3 Replies
ADVERTISEMENT
Nov 4, 2013
I'm facing a serious problem with udp protocol. I have Master & Slave devices.I did implement the class as the follow pseudo code states
In Master side
while (true)
{
1-send data to slave;
2-get data from slave;
3-apply force;
}
In Slave side
while(true)
{
1-get data from master;
2-if (collision happnes)
send force to the master
}
the problem is in line 2 in Master side. Once I include the line I can't send or receive data. What do you think the problem is?
View 3 Replies
View Related
Apr 26, 2014
I'm trying append more characters to a txt file after write title of foreground window and a newline character, but after first character, the next appear after a newline. Here is result => [URL].... and here is my code:
I'm using Dev C++ 4.9.9.2 compiler.
Code:
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
using namespace std;
LRESULT CALLBACK LowLevelKeyboardProc(int nCode, WPARAM wParam, LPARAM lParam);
[Code]....
I have made some changes for this =>
Code:
if (str_window)
strcpy(str_window,str_window);
strcat(str_window,"
");
log(str_window);
[Code]...
Now print only first character in digitation after title of active window. Still printing wrong see => [URL]..... Word "good" as sample.
View 10 Replies
View Related
Jan 6, 2014
I am reading data from a text file into a program. I am well aware of the subtle distinctions in the mode of data input/entry when using the stream extraction operator, the get() function, and the getline() function.
My problem is that all of them do not read and/or store the newline character alongside the data read!
Any function that reads and stores data and the terminating newline character together??
View 1 Replies
View Related
Mar 3, 2013
I got a program thats get the newline... I am able to get it vertical but im looking for the line to be horizontal. So lets say my text has "this is an example
= 1st line "
"i'm so crazy about c
= 2st line"
My program only gets this...first letter of 1st line and second line.
Code:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(){
char *filename = "room.txt";
[code] .....
View 5 Replies
View Related
Feb 26, 2013
Code:
#include <stdio.h>
int main(void)
{
int c;
int inspace;
[Code]....
I tried this code w/o no "inspace" in it and code still worked but if I made more than one blanks between words it happened vertically double newlines etc.. so I just wanna know how this "inspace" makes newline w/o blank line for each word. Is that a flag ?
View 7 Replies
View Related
Sep 12, 2014
I've got an issue with my code; whenever I add the " " for a newline, a newline is not actually printed onto the file.
Here's my code:
/*
Description: Lists all the files & other directories in the directory passed through argv.
*/
/*
Importing the required headers.
Dirent.h for the dirent struct.
Stdio.h for printf.
Conio.h for File input/output.
*/
#include <dirent.h>
#include <stdio.h>
#include <conio.h>
int main ( int argc, char *argv[] ) {
// Checking that the user has given the correct number of arguments.
[Code] .....
The solutions I've tried are:
Trying to add the ASCII character for a carriage return (13) and newline (10), but it didn't work.Using fputs() and fprintf() - both mentioned in the code.
View 8 Replies
View Related
Apr 24, 2012
I am new to C++ and wrote some code here that is not working how I want it to:
Code:
int main() {
vector<string> distinct;
string parag;
typedef vector<string>::size_type vec_sz;
vec_sz size = distinct.size();
[Code] ....
Basically, if I run it, it takes a string, stores it in a vector string, and then outputs it to the screen as I hit enter. But then it waits for another string to be entered. How can I stop it waiting for new input after I hit enter? I tried comparing parag with and terminating there, but I am getting compiler error. I am using code::blocks.
View 2 Replies
View Related
Feb 19, 2015
I'm learning internet sockets right now and to that end I've made a simple client/server chat program centered around select(). I've got it to where multiple messages can be sent and received on either side and the "prompt" will move down 1 line each time accordingly.
My only sticking point is when someone is in the middle of typing a message and a new message is received. The message they are currently typing is going to be deleted, so they'll have to start over again. What I want to do is grab the current contents of the stdin buffer (meaning, there's no ), save it, print the received message and move the prompt downward as usual, and then put that saved message back into the buffer, meaning not only is it back on the screen now, it's erasable too as if nothing ever happened.
I know that this will definitely be some very very non-standard C, and that's fine. To that end, I've read that curses, GNU readline, and termios are possibilities for this. I've tried those, but am having trouble making it work.
This will be a moot point when I put a GUI on it soon (probably wx, but maybe Qt) since it won't even be an issue, but I'm determined to make this work. Both systems (the "client" and the "server") are Linux, one being Ubuntu and one being Debian.
View 2 Replies
View Related
Jan 25, 2013
i know
Code: (condition) ? true-clause : false-clause
but how do you use an array as the condition, how will the code look?For example i want to write
Code:
string numbers[5] = {"one","two","three","four","five"};
numbers == "one" ? thumb : again; thumb and again will replace something else. Don't worry about them.
how do i say that if the numbers array is representing "one" then it replaces as "thumb", otherwise "again".
View 5 Replies
View Related
Feb 4, 2014
So I think I am having syntactical problem with my code.
Code:
int main() {
vector<int> ivec;
int score;
[Code] ....
I get an error from my compiler on the ?10th? line (Nested condition line) that says |19|error: invalid operands of types 'int' and '<unresolved overloaded function type>' to binary 'operator<<'|
The purpose of the program is to take input and store it in a vector and then change the value to be between 1-6. I made this for the purpose of learning about nested conditional operations.
View 3 Replies
View Related
Aug 1, 2014
I am trying to use getline as the conditional for a while loop as seen below.
string filename, guard_name;
int call_number;
vector <Seniority> SeniorityList;
ifstream SeniorityFile;
[Code] ....
However, when I compile the code, I get the following error message on the line with the while loop.
error C2780: 'std::basic_istream<_Elem,_Traits>
&std::getline(std::basic_istream<_Elem,_Traits>
&,std::basic_string<_Elem,_Traits,_Alloc>
&)' : expects 2 arguments - 3 provided
The program will be reading in a .csv file, so I need my program to be able to deal with values separated by commas. Is there a reason why it will not accept that conditional statement?
View 3 Replies
View Related
Jan 31, 2014
I want to know if it's valid to use and/or when using the conditional operator.
Example:
value = textBox1.Text;
decimal? qty = (value.Equals("0") || value.Equals("0.0")) ? null : (decimal?)decimal.Parse(value);
View 2 Replies
View Related
Apr 18, 2014
My goal is to read a one line file of a comma separated numbers into a floating point array. The numbers have up to 25 positions after the decimal. I'm having two issues with the following code.
1) atof() seems to be returning zeros every time. Why?
2) The last number includes the new line character. How do I get rid of it?
Note that I adapted the scanf command from here: The power of scanf() - [URL], and don't completely understand it.
Code:
#include <stdio.h>
#include <math.h>
//The following will be calculated in the real program.
#define DIM 1
#define N 8
int main()
[Code]......
In the "real" program, N is calculated and known before reading in the file and the file will always have 2 times N numbers.
View 9 Replies
View Related
Nov 16, 2014
I'm playing with my final year project, building a game boy emulator in C, and I wanted to try out something to streamline my code base. I'm building against Win32, GNU C and Googles Native Client.There are no platform specific headers or functions in use. What I'm trying to do is have a file that conditionally includes the entry point (so _tmain for Windows etc) based on a preprocessor directive being set/not-set.
[note] I realise I could write both entry point classes in one file and use the preprocessor directive in there, but it's not as neat as a single file calling in one or the other. I figure this should work because I can conditionally include headers for Win/NaCl (providing the signatures match, of course).
View 3 Replies
View Related
Jan 22, 2014
I am looking for a way to declare variables at run time which being a static language shouldn't happen. I will explain my situation.
I am upgrading a legacy program that modifies executables (non malicious). I am trying to add 64bit support.
It is a huge project and I understand the majority of it but my issues with how it handles the input data.
It has a struct that certain parameters of the input file is loaded into:
Code:
typedef struct DATA {
DWORD Size;
IMAGE_NT_HEADERS32 Headers;
} _DATA; *PDATA
etc, etc its a huge list.
My problem lies in the fact that I need to change IMAGE_NT_HEADERS_32 to IMAGE_NT_HEADERS64 at runtime.
That DATA struct gets called at least 110 times during runtime.
How I might tackle this? Having a conditional statement repeated that many times seems ridiculous.
View 6 Replies
View Related
Aug 1, 2014
I'm making a program to draw a trajectory, was using as a basis the tangent, but when I put 90 degrees, the tangent is very large, so I thought of putting an if (angle == 90) did not use the tangent.
the design is right, but after choosing it 90 degrees it stops to draw.
for example
1-30 degrees - draws
2-45 degrees ---- draws
3 draws -90 degrees ---
4-60 degrees --- not drawing
5 --- 80 degrees --- not drawing
*
*
making routine design is presented below:
void Draw() {
glColor3f(1.0, 1.0, 1.0);
glBegin(GL_LINES);
convert(graus);
if (ant){
x=xx;
y=yy;
[code]....
View 4 Replies
View Related
Nov 24, 2014
I am getting this message from Valgrind, As far as I can see what it points to is initialized. The memory it is referring to is freed in unload and I was not getting this error until after I added the check function. Valgrind was happy. Here is the code and the error message from Valgrind. I am trying to create a spell checker for an assignment for a online class I am taking. I just want to get this table working correctly before I add it to the rest of the program. The code seems to run fine but I have come to see that dos not mean much in C.
#include "hashTable.h"
#include <stdbool.h>
table_node hash_table[TABLE_LENGTH];
bool loaded = true;
//assigning letters a-z to table nodes for buckets
void key_hash_t( )
[Code] ....
Valgrind error:
arortell@gentoo ~/Development/Projects/C_Projects/Data_Structures/HashTable $ valgrind --leak-check=full --track-origins=yes ./hashTable
==11360== Memcheck, a memory error detector
==11360== Copyright (C) 2002-2013, and GNU GPL'd, by Julian Seward et al.
==11360== Using Valgrind-3.9.0 and LibVEX; rerun with -h for copyright info
==11360== Command: ./hashTable
[Code] ....
View 10 Replies
View Related
Apr 10, 2013
I want to do conditional compilation based on whether it is windows 7 or windows 8. Here is the code below.
#if (_WIN32_WINNT >= 0x0602) //Condition to check whether it windows 7 or 8 .Based on this we can load msxml 3 or 6.
#import <msxml6.dll>
#else
#import <msxml3.dll>
#endif
Im building the above code in windows 8 machine.
Issue here is _WIN32_WINNT should have a value 0x0602, it means it is running in windows 8 machine.Instead it has a value 0x0601 (Means it is taking windows version as windows 7 defined in sdkddkver.h).Im not sure after installing windows 8 sdk im not able to see any include or lib files in the path below C:Program Files (x86)Microsoft SDKsWindowsv8.0A . but i can see all include and lib files of sdk version v7.0A available although i did not installed it.
View 5 Replies
View Related
Jan 10, 2013
I have airport class which should navigate planes, in its list to runways, with method move, theres a method prepare which changes the direction of flight to all planes, always before move is called, move just increments decrement x and y of plane in its list. But after calling two times in row airport->move(), I get screwed and I really dont know wheres the problem. Have I badly initiazed something? Iterator gets invalidated.
Valgrind Stacktrace
Conditional jump or move depends on uninitialised value(s)
==26207== at 0x409601: plane::move() (in /home/xnovak11/Downloads/airport/main)
==26207== by 0x401FBD: airport::move() (in /home/xnovak11/Downloads/airport/main)
==26207== by 0x405FE1: io::start(std::istream&, std:stream&, std:stream&) (in /home/xnovak11/Downloads/airport/main)
This is how I add planes into list in airport
Code:
list<plane*> planes;
list<plane*>::const_iterator planeIterator;
list<plane*>::iterator planeIteratorMoj;
bool airport::addPlane(const plane& p) {
[Code] .....
This is the method where it fails. When I call it once, no problem, after second call I get instead of normal number in cout<<after move<< s1 i get like 8795456 ....
Code:
void airport::move() {
for(planeIteratorMoj = planes.begin(); planeIteratorMoj!= planes.end(); planeIteratorMoj++) {
plane * p1 = (*planeIteratorMoj);
int s,w;
p1->getPosition(s,w);
[Code] .....
View 3 Replies
View Related
Sep 14, 2014
I keep getting this warning message and I do not know how to fix it. Is it because I'm using char to instead of strings to replace all 't' with 'lp'?
#include<iostream>
#include<string>
#include <stdio.h>
using namespace std;
char * scanf(char * a) {
[code]....
View 6 Replies
View Related
Jul 25, 2012
Double values are stored in text file. 23.5 36.8 34.2 ... My teacher told me to read them character by character and then make words, like i have to read "2" "3" "." "5" and now have to make it or treat it as word and then using atoi(). I have to convert it into double. but i dont know how to do this....
View 5 Replies
View Related
Nov 10, 2013
I have to optimize a code for below scenario. I am reading stdin (a file redirected to stdin) character by character. How many chars are going to come is not known. After every few chars there is a seaparator. e.g $ as below
rhhrkkj$hghjhdf$ddfkrjt
While reading, if the separator arrives I'm processing the string stored before that separator and then continue reading stdin in same fashion, till EOF. I am using getc(stdin) to read chars.
Using gprof I can see most of the program time is spent inside main() , for this reading logic. Rest of the program is just some insert and search operations. I am getting time of 0.01 secs at the moment, want to reduce further.
View 6 Replies
View Related
Aug 10, 2012
How do I write an a program that will read an input file character by character?
View 1 Replies
View Related
Sep 7, 2013
How to make if else code below into SWITCH STATEMENT?
cout << "Enter the temperature: ";
cin >> temp;
cout << "Enter the pressure: ";
cin >> pressure;
cout <<endl;
[Code]....
View 6 Replies
View Related
Oct 6, 2013
In my program, I'm supposed to read a text file (the name of which is given to me as a command line paramater, as long with an integer), and display the text in a specific format (each line can only be as long as the integer). However, I'm having trouble even reading the text file. I don't know the syntax. I'm only allowed to edit the function that does the formatting, and the code in that is
void typeset (int maxWidth, istream& documentIn)
I don't know how to 'read' the file, as most examples online are ifstream, or openFile or something like that. What I want to do is just read the first character of the file, and continuously keep reading characters until the end of the file.
View 10 Replies
View Related