C++ :: Wrong Return Type When Returning Char Array As Pointer
Apr 25, 2014
I am writing a class Player which has several char arrays as private fields. I am trying to write a method which returns an array as a pointer, but doesn't alter the array in any way, thus the const.
Here is a snippet:
Code: class Player
{
private:
char state[MAX_STATE_CHAR + ONE_VALUE];
int rating;
char last[MAX_NAME_CHAR + ONE_VALUE];
char first[MAX_NAME_CHAR + ONE_VALUE];
int groupNumber = NEG_ONE;
public:
char * GetFirst() const
{
return first;
}
Visual studio is saying that the return type doesn't match.
View 3 Replies
ADVERTISEMENT
Feb 25, 2014
i'm getting a new error is a wrong return type.
WebAPI.cs
namespace DarkAPP___WForm.Libs {
class WebAPI {
System.Net.WebClient wc = new System.Net.WebClient();
public WebAPI() {
[code].....
View 6 Replies
View Related
Jul 18, 2013
I am trying out a technique for a singleton class:
// access controlled singleton, accessed through function "instance()"
// singleton is constructed in this function
// so that constructor and destructor will be used
class single {
// private constructor/destructor
[Code] .....
Playing around with the code in main(), I am having trouble with auto:
single& s = single::instance(); // works fine
auto a = single::instance(); // error ~single() is private
When I make the destructor public, the output of the program is:
ctor
dtor
dtor
So I fixed this by typing auto&. I'm still confused though, why wouldn't auto know I am returning a reference?
View 2 Replies
View Related
Apr 20, 2013
I have an array of char pointers:
Code: char *input_args[MAX_ARGS];
And I have this function:
Code: BOOL parseArgs(char **input_args[], input arg_num);
I am trying to pass a pointer to this char pointer array like this:
Code: parseArgs(&input_args, args_num);
But the compiler is complaining:
Code: warning: passing argument 1 of 'parseArgs' from incompatible pointer type ...
note: expected 'char ***' but argument is of type 'char * (*)[20]'
Tried a bunch of stuff but nothing works.
View 4 Replies
View Related
Apr 4, 2013
I am having problems with my function definition of a function that should return a structure value.
This is the error I get compute.cpp(9): error C2146: syntax error : missing ';' before identifier 's_advertisebus'
The error is on the line where I start my function definition typing my function type as a structure. A long time ago in c the keyword struct is used with the structure type like struct s_advertisebus s_readadbus(). I tried it both ways but I got errors.
// struct.h
#ifndef STRUCT_H
#define STRUCT_H
struct s_advertisebus {
int nnumberofads;
float fpercentused;
[Code] ....
View 2 Replies
View Related
Feb 17, 2014
Ive been getting an odd error with this code when I try to compile it, as well as Im not quite sure as how to return my variable "compType" as a char type.
Main
#include <iostream>
#include "Shape.h"
#include <iomanip>
#include <cmath>
using namespace std;
void inputShape( char shape)
[Code] ....
View 1 Replies
View Related
Mar 24, 2015
I am trying to return a char pointer so that i can re use it again. I am writing a vigenere function that takes a message, a key and an initialization vector where it performs the encryption, prints out the encrypted message and returns the encrypted message. I print out the process step by step and everything works, however i pass the answer and print it out again and only the first letter gets changed. I put my code below and my output right after that.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>
#include <time.h>
void decrypt(char *to_encrypt, char *key, char* pct);
enum flag{encryption = 1, decryption = 0};
[code].....
View 3 Replies
View Related
Apr 17, 2014
Here is my code to find the index of a string array whose string is equal to the query string. I have checked the program can return the correct index, but the cout result is totally wrong.
#include <iostream>
#include <string>
using namespace std;
[Code].....
View 4 Replies
View Related
Oct 6, 2012
If we are using strcpy() for copying the string. As we are passing pointers to it It will copy the string & no need to return the string .This function will finely work with return type as void then why Ritchie has used it as char* strcpy()?
View 4 Replies
View Related
Jul 13, 2014
/*
* symboltable.c
*/
#include "symboltable.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "include/utlist.h"
[Code] ....
View 2 Replies
View Related
Dec 2, 2013
I came across some code and it's not clear why it is casting an unsigned char * to another pointer type only to free it right after. Here are the relevant structures:
Code:
struct _Edje_Message {
Edje *edje;
Edje_Queue queue;
Edje_Message_Type type;
int id;
unsigned char *msg;
[Code] .....
As you can see, _Edge_Message has a *msg field, but in the function below, they cast it to the other two structure types inside the case blocks of the switch statement only to free it. What is the point or advantage of doing this?
Code:
void
_edje_message_free(Edje_Message *em) {
if (em->msg) {
int i;
switch (em->type) {
[Code] ......
View 14 Replies
View Related
Sep 8, 2014
Does uses of pointer in char type cause extra overhead?
View 7 Replies
View Related
Dec 17, 2013
Write your question here.
#include<iostream>
using namespace std;
void getInput(int& numOfDays, double& itemPrice);
[Code].....
So this program is supposed to calculate the price of an item, and return it back as the variable total of type int. but for some reason it gives me a weird output on total. And am i using call by reference correct?
View 1 Replies
View Related
Mar 2, 2015
I'm having trouble returning a char array by a function, here's the code. The problem is the 'reverse' function, the purpose of the function is to send two char arrays, 'newline' containing the char array, reverse it and place it in the 'rev' char array then output it back in main, however the output remains blank so I assume there must be something wrong with the reverse function.
Code:
#include <stdio.h>
#define MAXLINE 10
int fgetline(char line[], int maxline);
void copy(char to[], char from[]);
void reverse(char forw[], char rev[], int arrsize);
[Code] .....
View 1 Replies
View Related
Mar 8, 2015
Code:
charArr = new char[50];
cout << "put in value: ";
cin.getline(charArr, 50);
some_func(charArr);
[Code] ....
Let's say I enter a value: 101
It goes into the if statement but clearly I've enter 1s and 0s. When I debugged, at i = 0, the charArr[i] gives me a value of 49 when assigned to an int variable. But when I cout charArr[i] it gives me 1.
So I'm going to assume 49 is part of the address? How can I correctly check the if statement condition?
View 4 Replies
View Related
Apr 27, 2013
I'm having some problems with changing an array of numbers of type char to type int. Every time i try to sum 2 array indexed values it returns some letter or symbol. Also, if i change the type of the array in the functions the compiler gives me an error message. I would also like to add that the problem requires that the first two arrays be char so each individual number gets assigned to a different value.
My current code is:
Code:
#include <iostream>
void input(char a[], char b[], int& size_a, int& size_b);
void convert(char a[], int size);
void reverse(char a[], int size);
void add(char a[], char b[], int c[], int size);
int main()
[Code]....
View 4 Replies
View Related
Dec 21, 2013
how to convert an element of int type of an array to char type?
View 2 Replies
View Related
May 15, 2014
I want to return a char array to the main() function, but its returning garbage value.
#include<stdio.h>
//#include<conio.h>
#include<string.h>
char* strtrmm();
int main() {
char str1[100],c1[100];
[Code] .....
View 5 Replies
View Related
Mar 5, 2013
I have a program that is trying to find all factors of an integer given. It needs to be done in a recursion function. Right now i have code similar to just getting the prime factors of a integer.
unsigned int * find_factors_using_recursion(unsigned int x ) {
unsigned int * factor = new unsigned int[];//do i put x in here ?
for(unsigned int i = 2; i < x; ++i) {
if(x % i == 0) {
find_factors_using_recursion(x / i);
*factor = (factor[i] = i);
} }
return factor;
delete [] factor;
}
When i cout the *factor = (factor[i] = i) it gives me the prime numbers of the integer passed into the function but when I return the pointer it only returns one of the prime numbers. I'm new to c++, how to return pointers from functions that would be great with an example to go with it.
View 10 Replies
View Related
Dec 10, 2014
I know how to pass a 2-D array to a function. The prototype for that is void f(int (*p)[2]) assuming the array is of integers and there are 2 columns in it.
However, if I wanted the same function to return a pointer to a 2-D array, what would be the prototype?
View 2 Replies
View Related
Nov 12, 2013
Code:
#include <stdio.h>
int main(){
unsigned char x, y=10;
scanf ("%c", &x);
[Code] ....
If I take out scanf and assign x a value then it works, but if I enter, for example, 10 into scanf it comes up as 234 rather than 100.
View 13 Replies
View Related
Sep 26, 2013
question from chapter 11, qn 8 modern C programming by king
Write the following function: Code: int *find_largest(int a[], int n); When passed an array a of length n, the function will return a pointer to the array's largest element
Code:
#include <stdio.h>
int *find_largest(int a[], int n)
{
int i, x;
x = 0;
[Code].....
have traced the code line by line and it prints correctly up to line 31. However, when the program exits (line 35) , it goes to some other screen with very complex code and my output disappears.
Just to clarify: If I just run the code as is, there is no output. However, when I trace the code line by line, the output appears, but then disappears as the program exits My input was 1 2 3 4 5 6
View 11 Replies
View Related
Jun 29, 2014
I'm trying to write a function that returns a pointer to a dynamically allocated array. Here's my code:
#include <iostream>
using namespace std;
void IndexArray(int, int);
int main(){
int *arr, n;
[Code] ....
When I try running the program, I get the error
"Unable to start program 'D:C++FilesdynamicArraySolReleasedynamicArray.exe'. The system cannot find the file specified."
I'm honestly not sure if the issue is my program, or something with C++. At the moment, I cannot debug any of my programs or else I get the same exact error. I basically need to release everything without debugging it. I last used C++ about a year ago and I'm finally back in school, and so trying to get back into it. I use Microsoft Visual C++ 2010.
View 14 Replies
View Related
Apr 18, 2013
I am trying to convert a char buffer[1024] with raw data to int 16 buffer2[1024] which is supposed to have hex data (0x01, 0x02 kind of format).
Code:
char temp_buffer[1024];
block_size = sizeof(temp_buffer);
num_blocks = sizeof(char);
Status = mount(0, &myfsObject);
if(Status != DAVEApp_SUCCESS)
[Code] .....
I am verifying the data of resultant buffer by creating a new file and writing data to it. The result which i got is:
Code: H uy H uy H uy H uy H uy H uy H uy H uy
View 2 Replies
View Related
Sep 2, 2013
How to insert strings into an array of type char and also delete strings from that char array.
View 4 Replies
View Related
Mar 20, 2015
I am not getting any error below
--------
#include <iostream>
using namespace std;
void main()
{
char sqr[3];
sqr[0] = '1';
sqr[1] = '1';
cout << sqr[0] << sqr[1];
while (1);
}------------
but if I move my char type array before main , I get error l
----------------------------
#include <iostream>
using namespace std;
char sqr[3];
sqr[0] = '1';
sqr[1] = '1';
void main()
{
cout << sqr[0] << sqr[1];
while (1);
}
-------------------
View 8 Replies
View Related