C++ :: Setting Up Counters - Using Function / Passing Parameters
Jun 30, 2012
Need setting up counters for this program which should
Given a file of text, assume that
a "word" is 1 or more consecutive, non-whitespace characters
a "sentence" is a series of words terminated by either a period, exclamation point, or question mark
Design a C++ program (using functions/passing parameters) that will
-interactively prompt for and read the name of an input file
-interactively prompt for and read a string to search for
-open the input file (using an input filestream variable) and with one pass through the file
-count the number of "words" in the file
-for each word, make sure all letters, except the first, are lower case - leave the first character unchanged
-count the number of "sentences" in the file
-count the number of letters in the file (A-Z,a-z)
-count the number of consonants in the file (consonants are letters that are not vowels - the vowels are: a, e, i, o, u, A, E, I, O, and U)
-count the number of nonwhitespace characters in the file that are NOT letters
-count the number of times the search string is found in the file (must be an exact match) - search for matches AFTER upper case letters have been coverted to lower case
I'm using the Visual C++ Express 2008 and i need to pass as parameters to a function characters coded in UTF 8. My environment is Windows 7. The editor of the VC++ write in UTF 8 or UTF 16? If it writes in UTF 16 how can i change it?
how would I pass this parameter and how/why is it not working this way? I've tried many different methods to this and I can't quite seem to figure it out.
class student { public: int id; //student ID number string name; //student’s name string university; //student’ university }; //student list is a doubly linked list of students.
[code]....
My header file.
I am honestly not sure where to start here. I would assume that it would know what to do with the varibles but it doesn't seem to want to accept them. It gives me
Error1error C2660: 'studentList::push' : function does not take 3 arguments
2IntelliSense: no suitable constructor exists to convert from "int" to "student"
// Music Shuffle Program // This program takes an array of strings and randomly permutes their order. // This allows us to generate new song shuffles. #include <iostream>
Code: void function1(unsigned int var1); int main(void) { function1(-3); } void function1(unsigned int var1) { printf("%d", var1); }
The output is -3. how it happens the argument is unsigned but iam passing signed but still prints the signed value. My bigger question is how the arguments are handled if the passing parameters are different types compared to declaration.
I need to set a function to a variable of some kind. Then later in the program it needs to run the function that is set to the variable. The variable doesn't need to change after it is set to a function, it just needs to be able to be set to a function. So maybe I don't need a variable? What do I do? :3 Is this even possible? :o
Example: if (PosRampYes == 0) { SomeVariableOrSomething = FirstFunction(); } else { SomeVariableOrSomething = SecondFunction(); } //later: SomeVariableOrSomething; //so if PosRampYes is set to 0 then this line would run FirstFunction()
I declared a pointer in main with value 0, so I want to change its value so that it points to other variable from a function, I guess the function creates a copy of my pointer that's why whatever I do within function doesn't change the real direction of the pointer in main. I've been trying something like this:
#include <stdio.h> void redirectionate(char *str, char *ptrCopy); int main() {
I am having problems with setting up a menu as a function. The point of the menu is to display a list of 4 options and the user is supposed to choose one option and then the program will run. I am having trouble understanding how to display the menu once I run it because it is not working.
#include <iostream> using namespace std; int menu(int ans); // function declaration for menu void draw_triangle(int size, char ch); //function declaration for triangle void draw_downtri( int size, char ch); // function declaration for upside-down triangle void draw_diamond(int size, char ch); //function declaration for diamond
In my program I created three separate return functions. Each function is labeled:
int boxes(int x, int y); int leftOver(int x, int y); double avgItemsShipped(int x, int y, int z);
Is it bad programming practice to use 'x' and 'y' in all of my functions? Should I use the this keyword inside the function? We use this often in my Java class and I know it exists in C++, but I haven't actually seen it used (or used it myself yet).
So in this function it is already passing the array into the function but the thing is one parameter being passed into the function and if so how do I go about passing 3 arrays as parameters into the function? Also the program only asks for a user entry of hours for three different cars so why would there be a point in making two additional arrays to be passed into the function?
#include <iostream> #include <iomanip> using namespace std; //passing array into function double calculateCharges(double hours[], int HoursArrayLocation);//call function
So I was reading my book and it listed this piece of code. The first piece of code is in the book and the 2nd is just my test on the piece of code. I am curious as to why in the functions parameters there is a reference to aString. I've noticed that removing it has no affect on the outcome of the code.
So I'm writing a data structure from scratch as part of a university assignment in c++, and I have to write an iterator for it. The problem involves comparison between constant iterators and normal iterators, and I'm going about it in this way: I wrote a constructor of normal iterator which takes a const iterator as its only parameter, hoping that the comparison operator between two normal iterators will be enough:
btree<int> bl(5);//the data structure auto iter = bl.begin(); iter != bl.cend(); //trying to compare iterator with const iterator
but apparently this is wrong, since the compiler tells me something along the line of "no function 'operator!=' which takes ......" It seems the constructor is alright, since the following works:
btree<int>::iterator i(bl.cend());
Am I getting something fundamentally wrong about it? How is this functionality actually implemented in C++ library containers like vector?
I am creating code for a group project in my class. All my group members made a header file with an object in it with their functions. One of the functions in my partner's code uses a data member of mine in the function, so she has the function parameter a object of my object. (This isn't the code but for example)
class B { friend class A; void displayAthing(A object) { cout<<object.thing<<endl; }
I have this when I call the function in the cpp file
int main() { A object; B b; b.displayAthing(object); return 0; }
However, when I compile, it gives me an error that the function does not take 1 arguments.
I noticed that when using variadic functions, if I pass the va_arg() as parameter to a function, the parameters get passed in reverse. Is that expected?
For example, the following code outputs Code: 1 2 2 1
test.cpp: In function ‘int main()’: test.cpp:20:30: error: no matching function for call to ‘func1(std::vector<int>&)’ test.cpp:20:30: note: candidate is: test.cpp:8:45: note: template<class T, class U> std::map<T, T> func1(U) test.cpp:8:45: note: template argument deduction/substitution failed: test.cpp:20:30: note: couldn't deduce template parameter ‘T’
I have been experimenting with variadic templates with the aim of caching a call to a class method by storing away the object pointer, method pointer and parameters. I've actually had some reasonable success but have now hit a stumbling block. I now wish to wrap my parameters in a simple template class when I cache them. My success is as follows:
Using variadic template functions to store these pointers and paremeters;
I'm able to pass a method pointer and unwrapped parametersI'm able to pass wrapped parameters on their own.I'm NOT able to pass a method pointer and wrapped parameters I set up a little prototype project to demonstrate the issue and added comments above the function calls to indicate the compilation results. Here is the code:
Code: #include "stdafx.h" ////////////////////////////////////////////////// // Basic class with a simple method ////////////////////////////////////////////////// class MyClass { public: char Method( int i, float f ) { return 'A';
[code]....
But I'm convinced it should take three arguments, the method pointer and two wrapped parameters. Visual studio even suggested it should as shown below:
I want to use one median function "selectfunction" to choose one of the 2 other functions at random to pass my 2-dim array to the selected function. There is a problem in the median function
#include <iostream> #define random(x)(rand()%x) // for random number between numbers of 0 and 1 using namespace std; void proc1 (int iArray[][2]); void proc2 (int iArray[][2]); void selectfunction(int iArray[][2]); int A[4][2] = {{1, 2} , {3, 4} , { 5, 7} , {8, 1} };
I'm trying to write a simple Delegate class with a Bind() and Invoke() function. For now it only needs to support a void class function with no parameters. I've searched around and found quite a few exmaples, though, those class are heavily templated and I lose track trying to simplify it.
So far my code is following:
Code: #include <windows.h> class Test { public: void DoSomething() { MessageBox(NULL, L"Test::DoSomething!", NULL, 0);
[Code] ....
The part I am having difficulty with is assigning &Test::DoSomething to the m_Callback variable.
&tObject::DoSomething works, yet _Callback which I pass &Test::DoSomething to does not work.
I am trying to pass function as argument to another function. My idea is to write function that can works with any type of array, and for it to be able to compare array items I'd like to use my own compareTo function. But I need to be able to pass function to use for comparing argument.
To say it short I am trying to write my own qsort that would take compareTo as one argument just like original qsort does.
Here is my code
// test.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <windows.h> template <class T> int compareTo( T a,T b){
[code]....
and errors
1>d:my documentsvisual studio 2012projects est est est.cpp(29): error C2896: 'void DoSomething(T,int (__cdecl *)(T,T))' : cannot use function template 'int cmp(T,T)' as a function argument 1> d:my documentsvisual studio 2012projects est est est.cpp(8) : see declaration of 'cmp' 1>d:my documentsvisual studio 2012projects est est est.cpp(29): error C2784: 'void DoSomething(T,int (__cdecl *)(T,T))' : could not deduce template argument for 'T' from 'int [3]' 1> d:my documentsvisual studio 2012projects est est est.cpp(21) : see declaration of 'DoSomething'