Solved

Different character when the size increases from 255

Posted on 2011-03-04
10
341 Views
Last Modified: 2012-05-11
Hi All,

Iam new to C programming . Can anyone tell me when I assign a character more then 255 characters to char variable in C, Iam getting a different charctaer when I print it.

Thanks in advance..
0
Comment
Question by:Swaminathan_K
  • 2
  • 2
  • 2
  • +2
10 Comments
 
LVL 31

Accepted Solution

by:
Zoppo earned 50 total points
ID: 35037597
Hi Swaminathan_K,

could you post some code what you're trying?

Maybe you're mixing up 'char' and 'char*' - a 'char' is a variable to hold one single character, a 'char*' is a pointer to the first character of a string which can be of any length but has to be allocated before and released after used.

ZOPPO
0
 
LVL 77

Expert Comment

by:slightwv (䄆 Netminder)
ID: 35037603
What are you assigning to the variable and what is being printed?

Post the code in question and what the output is.
0
 

Author Comment

by:Swaminathan_K
ID: 35038109
void main ()
{
char name :='7892';
printf("%c \n",name);
}
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 77

Assisted Solution

by:slightwv (䄆 Netminder)
slightwv (䄆 Netminder) earned 50 total points
ID: 35038271
char by itself is a single character.

printf with a %c prints a single character.

You need an 'array' of characters and a %s in printf.

http://www.learn-programming.za.net/programming_c_learn07.html
0
 
LVL 9

Assisted Solution

by:Subrat (C++ windows/Linux)
Subrat (C++ windows/Linux) earned 50 total points
ID: 35039415
//char name :='7892';
char const------------->single char within single quote. Here hope you need a string(array of chars)

std::string  str ="7892"

or

char* str = "7892";
0
 
LVL 5

Assisted Solution

by:jaiminpsoni
jaiminpsoni earned 100 total points
ID: 35043721
Use it like this....

void main ()
{
char * name :='7892';
printf("%s \n",name);
}
0
 
LVL 5

Assisted Solution

by:jaiminpsoni
jaiminpsoni earned 100 total points
ID: 35043722
Actually... it should be like....

void main ()
{
char * name = "7892";
printf("%s \n",name);
}
0
 

Author Closing Comment

by:Swaminathan_K
ID: 35063386
Thanks . I got the answer.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Summary: This tutorial covers some basics of pointer, pointer arithmetic and function pointer. What is a pointer: A pointer is a variable which holds an address. This address might be address of another variable/address of devices/address of fu…
This is a short and sweet, but (hopefully) to the point article. There seems to be some fundamental misunderstanding about the function prototype for the "main" function in C and C++, more specifically what type this function should return. I see so…
Video by: Grant
The goal of this video is to provide viewers with basic examples to understand and use for-loops in the C programming language.
The goal of this video is to provide viewers with basic examples to understand how to create, access, and change arrays in the C programming language.

756 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question