C++ :: Function Keys (F1-F12) Encountered A Logic Bug
Feb 27, 2014
I was developing an exercise program for myself (note: not a project in school) to enhance my programming skills in C++ then I encountered a "logic bug" (that's how I call it :D ) I think. I googled stuffs I need to know and ended up to post my question here.
Here's the scene:
1. When using GetAsyncKeyState I can capture Function Keys [F1-F12, etc..]
2. While doing and having fun to my exercise program, I suddenly noticed that whatever key I pressed from the keyboard {example: asdfkj], it keeps the keys entered and brings to a "field" that accepts user input.
What you should do...
1. Press any key (example: asdfisdjfisdjff) then proceed to press F1. And see what happens. I don't know how to erase what I have entered before pressing F1.
here's the code.
#include <cstdlib>
#include <iostream>
#include <windows.h>
#include <string>
using namespace std;
void gotoxy();
void gotoxy( int column, int line ) {
[code]....
View 5 Replies
ADVERTISEMENT
Oct 23, 2012
Say I have a dll that performs some mathematical parsing and calculations. The calling function is only a single C -linkage wrapper function in the dll. I can anticipate likely errors and program the dll methods to do several things when an anticipated error is encountered. (For now, let's not worry about unanticipated errors).
1 - send an error message to the user application using WM_COPYDATA
2 - throw an exception (assuming the calling app has used the try catch scenario)
3 - try to gracefully recover from the error within the dll and keep on going (jump to some safe place - but how ??)
4 - don't throw an exception from within the dll but halt the program (not very nice - the user won't know what happened)
Previous discussions on the matter have predominantly expressed the opinion that it is bad to throw exceptions from within a dll.
Long ago there was in use setjmp.h and something like
Code: if(setjmp(e_buf)) return -1;
But I believe this was only for old C applications - I'm not really sure. But at least someone back then recognized the need for getting back to a safe place in a process.
View 8 Replies
View Related
Jul 4, 2014
how can I allow pressing some keys on the keyboard in C++? I mean, when you are in the console and you are only allowed to press numbers before pressing enter, for example.
View 6 Replies
View Related
Mar 31, 2012
I found this method
Code:
TCHAR win_getch()
(below) on a website which is used for printing the characters as the keys on keyboard are hit i-e without hitting the ENTER key. This method is used in a while loop like this
Code:
while ((c = win_getch()) != 13)
{}
I wanted to know why is the character compared to
Code:
13
i-e
Code:
if((c = win_getch()) != 13) then do something
Code:
/**
* This function will simulate the getch() function from conio.h.
* Note that this does not work for special keys like F1-F12, arrow keys,
* even the ESC key does not seem to work with this function.
* @return TCHAR read from input buffer.
*/
TCHAR win_getch() {
DWORD mode;
TCHAR theChar = 0;
[code]....
View 2 Replies
View Related
Feb 12, 2015
My program uses a menu that easily facilitates a person to navigate trough out it but im stuck on a part and I cant go to menu3 with the arrows (only use c code not c++)
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
void sleep(long int interval) {
for(int i=0;i<interval*1000;i++);}
[Code]...
View 6 Replies
View Related
May 19, 2013
I understand what a map is and all, but what purpose does multimap serve?How can you access a specific member if the keys are the same?
View 8 Replies
View Related
Apr 7, 2013
I need a container which has multiple keys. The number of keys, which are related to a value, is not constant, but it is small. (less than 10). I have tried to do this with std::map, but things are working only with a constant number of keys per value.
Something like this
key1 ----|
key2 ----|--------- value1
key3 ----|
key4 ----|--------- value2
key5 ----|
View 11 Replies
View Related
Mar 2, 2014
So I have assigned this method to each TextBox. It works fine pressing the left arrow and right arrow, but for some reason will not work using the up and down arrows. I have tested the string, using MessageBox and it is correct...the loop even proves it finds a matching TextBox. It is correct as in it displays the TextBox name it should be selecting but doesn't. I have no clue! Now the first select method is the one I want to use, I used the loop to check to see if it was even finding a match. It does find it but doesn't select it. The naming convention for my text boxes is r1c1 where the first number indicates the row and the second number is the column. There are 9 rows and 9 columns. This SHOULD be working but for whatever reason it is not. I've even put a message box inside the if statement for the up and down keypress check and it pops up when i press up or down.
private void Navigate(object sender, KeyEventArgs e) {
TextBox input = (TextBox)sender;
string nextBox = input.Name.ToString();
if (e.KeyCode == Keys.Left) {
if (int.Parse(nextBox.Substring(1, 1)) > 1 && int.Parse(nextBox.Substring(3, 1)) == 1)
[Code] ....
View 7 Replies
View Related
Sep 4, 2014
I'm trying figure out how Windows Firewall functions by experimenting with Bittorrent's add exception to windows firewall option, I deleted the entry from the Firewall options and also located that the regkeys are in HKLM/System/CurrentControlSet/Services/SharedAccess/Parameters/FirewwallPolicy but I can't figure out what registries are made when an application is added as an exception in the Windows Registry.
View 6 Replies
View Related
May 21, 2012
I have been writing a program to generate pairs of RSA keys using small prime numbers. I have been using mpz_invert() to get a value for d for the private key. On small prime numbers it calculates the correct value, but on larger primes it calculates incorrect values.
I'm assuming there must be an upper limit to the values the mpz_invert() function can handle? If so, what is this limit to avoid erroneous values?
View 1 Replies
View Related
Jan 7, 2012
Code:
1
121
12321
1234321
123454321 EDIT:
the above pyramid looks like a doom.i.e 1-5 will be in center.1-4(L)1-3(L)1-2(L)1(L) similarly 1-4(R) 1-3(R) 1-2(R) 1(R)
I'm partly successful in building the requirement of the program.but cant able to think the logic for the other half. how can i proceed.below is the code written in c#.
Code:
for (int i = 1; i <= 5; i++)
{
//int l = 1;
[Code]....
View 3 Replies
View Related
Jan 24, 2014
So I have a program where I solve a maze using stacks. So my display_maze function take two parameters and displays the maze according to where the x coordinate and y coordinate are.
I have an error during my move function, as my maze doesn't display for some reason
void Player::player_move() {
Stack stack;
Maze maze;
Lock taken;
// Monster monster;
stack.push_values();
[Code] ....
It should be displaying, because after debugging I discovered the problem isn't with the display_maze function.
View 1 Replies
View Related
Oct 30, 2014
So I'm trying to take some information that a user inputs and to then write it into a .txt file. The user would input a student ID followed by 4 quiz grades. I need to use nested loops for the input, a while loop for the outer and a for loop for the inner.
The data in the .txt should would look like:
studentID quiz1 quiz2 quiz3 quiz4
studentID quiz1 quiz2 quiz3 quiz4
etc.
My problem is I'm not sure how to structure the code. I have very few examples I'm working with to understand what I'm working with.
View 2 Replies
View Related
Oct 30, 2013
I'm trying to create program that reads in commands from an input file, and accordingly creates, connects or destroys logic gate primitives (and gates, or gates). Additionally, I'm trying to modify a previous program that I wrote to do this using QThreads, where each gate is placed in its own QThread. I'm trying to avoid using invokemethod, and I'm sure this method can work. My specific issue that I'm having trouble debugging is in my connect code block in main.cpp. Whenever I try to reference a gate specified by the input file that is NOT the true or false gate (I have one of each and they are attached to any gate that needs a true or false input), I get only a NULL reference. This includes attempting to reference the gate in my gatelist QMap. Calling gatelist.value(newCommand.at(1)) causes the program to hang, and the connect statements referencing said gate return errors about connecting a signal or slot of a NULL pointer.
Here is main.cpp:
#include <QPointer>
#include <QMap>
#include <QDebug>
#include <QString>
#include <QFile>
#include <QTextStream>
[Code] ...
My accompanying class declarations can be found here : [URL] ....
View 6 Replies
View Related
Sep 17, 2013
My issue is regardless of which date I input its always defaulting to the values I have set in my constructor in my implementation file in the else statement. So the values always default to 3/15/2006 I think its something to do with the logic in my bool function but I may be incorrect.
header
//date.h header
#include <iostream>
#include <string>
using namespace std;
enum DateFormat {numeric, standard, alternative};
const int MIN_YEAR = 1900;
const int MAX_YEAR = 2015;
[Code] ....
View 4 Replies
View Related
Nov 18, 2014
I need to create code based upon the following pseudo code:
dictionary=vector
file containing words to search for=external file
While there more words to search, for search the dictionary if the entire dictionary is searched and the word is not found, return the word, search the dictionary for the next element (and so on)
I cannot for the life of me figure out the sequence of loops to do this. The following code returns all of the words instead of just the ones not found in the dictionary, but it's all I've got after countless changes:
#include <iostream>
#include <fstream>
#include <vector>
#include <string>
using namespace std;
int main() {
string dictword;
ifstream dictionary;
[Code] ....
And it returns every word in the external file.
View 1 Replies
View Related
Jan 28, 2014
I can't seem to find the logic error in my perceptron. The perceptron's feedback function pushes back a bias of 1.0 into the input vector, and calculates the dot product of the input vector and it's weight vector, and returns 1 if the dot product is > 0, and -1 otherwise. This will determine whether the inputted point is above or below the hyperplane given by the functor.
The training function instantiates a trainer object , which feeds it a vector random numbers, along with the correct answer (in this case, whether the point is above or below the hyperplane given by a functor). It then calls the feedback function, and subtracts its answer from the correct answer, and updates the weights by adding the input vector to the weight vector, and multiplying the weight vector by the error, and by a correction factor, in this case 0.01.
Typedef.hpp
Code:
#ifndef TYPEDEF_HPP
#define TYPEDEF_HPP
#include <vector>
#include <random>
typedef std::vector<float> FloatV;
typedef std::random_device RNG;
typedef std::uniform_int_distribution<> UID;
[Code] ....
View 14 Replies
View Related
Nov 22, 2013
I have been struggling with this program. I am somewhat new to c and suck at logic. I have a personal program I want to make that I will try to get extra credit for in school. I have a printed set of winning lottery numbers form the last 10 years. I chose the easiest one do do logically which is just 5 numbers none repeating.
I am trying to find out how I can print the least common 10 sets. I think if there are any set which have not been picked I would have to print all of those because logically they would all be equal, then print sequentially the sets least picked up to 10.
I have pseudocode which I am sure is wrong but will post it just to show that I am trying. My first attempt was to add the numbers but quickly realized that that wouldn't work ...
5 Nums Pseudocode
Code:
Read Nums
Parse Into Ints
Make Array [185] //39+38+37+36+35 The highest the numbers added together can go
//LOGIC
[Code] ....
View 5 Replies
View Related
Jan 14, 2015
I have a doubly linked list from which I need to occasionally delete elements (any elements that have a type value different from 0). The function I have seems to work, but looking at it, I think I could probably make the logic cleaner.
The structs in questions are declared here, with irrelevent variabled omitted:
Code:
struct Event {
//...
int type;
//...
struct Event *next;
struct Event *prev;
[code]....
View 7 Replies
View Related
Aug 16, 2014
In a record I have IDs of type int but some may repeat. These IDs also got sales of type float. I wish to compare the IDs number of times they appear and of match found accumulate their sales and put it in another struct. However if an ID is found which is new I pass it to a function to initiate sales..but my code never reach second ID, given I am trying with two IDs.. given IDs in transFile
ID Sale
12345 870
90909 100
I enter these two in transFile and match it with masterRecord. 12345 is matched and updated likewise but 90909 is never executed or matched in checkID function..
void sync_trans_files(unsigned short int count, master masterRecord[], char transFile[]){
const short int weeklyemployee=25;
//read number of records from transFile;
struct trans{
[Code].....
View 8 Replies
View Related
Sep 15, 2014
I created a program to convert files to XML. This if statement is giving me some trouble. I am trying to replace all &s with the XML & so that &s will work in the entities of the XML file. Some entities have more than 1 &. With those which have more than one I get an output like this: <cit:district>Anambra & Enugu & Eb</cit:district> .
if(word.find("&") != string::npos) {
word.replace(word.find("&"), 1, "&");
}
View 2 Replies
View Related
Jun 3, 2013
I'm new to C#. I'm trying to create a program to audit some of our processors. As you will see below, I have two foreach loops that allow me access to errorOrders(returns <<UserName, #of errors>>) and totalOrders (returns <<UserName, #of totalOrders>>).
However, the problem i'm running into now is that it seems to constantly loop through these two ForEach loops. When i run it, the 'count' on both errorOrders & totalOrders is 38. The program loops through all 38 users just fine, but then it continues to loop through users again...re-doing the process that it just finished.
I'm looking to see if there is another way I could set this section up so that it only loops through users once. I was thinking about trying to create a 'Boolean flag' that would force the program out of the ForEach loop after it has run through all the users...but i'm sure there are other ways to handle this.
foreach (KeyValuePair<string, int> error in errorOrders)
{
foreach (KeyValuePair<string, int> total in totalOrders)
{
[Code]....
I know i should probably seperate these two foreach loops instead of having them nested..however, the problem that arises once i do that is my errPercentage can not be calculated if i do.
View 1 Replies
View Related
Mar 25, 2014
I have a hit a snag in a number guessing game program. I was given a half-completed program and told to use functions to complete the missing pieces. It looks unwieldy, but this is how it is supposed to be. I have temporarily made the random guess value visible for troubleshooting purposes.
#include <iostream>
#include <time.h>
#include <stdlib.h>
using namespace std;
int welcome() {
cout << " Welcome to the hi-low game!" << endl;
[code]....
The issue lies within this piece of code:
checkGuess(guess, correct); done = false; //either true or false
} while (!done);
cout << "Congratulations, you got it!" << endl;
return 0;
}
I need to manipulate the Boolean variable done so that it registers as false when the user inputs a number higher or lower than the randomly selected value. However, if the user guesses correctly, done will become true and the program will end.
As it stands now, the program will not terminate, and if I set done equal to true like so:
checkGuess(guess, correct); done = true; //either true or false
} while (!done);
cout << "Congratulations, you got it!" << endl;
return 0;
}
Every number the user inputs will register as correct instead of the one right guess.
View 4 Replies
View Related
Mar 14, 2014
I once again have a logic error. This time I am positively baffled: I am making a function that messes with three vectors it receives as parameters. The function adds new items to those vectors, but the funny thing is, while it completely normally adds items to two of the three, it fails to do so for the first, despite the fact that I use the same template! Here the function is:
void giveReward( Character player, vector<string>& spells, vector<string>& weapons, vector<string>& armor ) {
int reward, rewardGen;
srand( time( 0 ) );
reward = rand() % 3 + 1;
[Code] ....
View 10 Replies
View Related
Jul 6, 2014
error says "cannot convert 'int*' to 'int' in function main()
and also
type mismatch in parameter in function sort(int,int)
Heres the code:
#include<iostream.h>
#include<conio.h>
void main() {
void sort(int,int);
clrscr();
[Code] .....
View 11 Replies
View Related
Feb 11, 2013
i need a function that will work for both dynamic and static implementations of a function to get the transverse of a matrix. so far, i have this
Code:
matrix transpose(matrix m)
{
int row, col;
row = m.com_dim;
col= m.row_dim;
}
[code]....
this works well with my static implementation, but when i try it in dynamic it gives me errors. the function has to be the same for both dynamic and static implementation
View 4 Replies
View Related