Solved

Different character when the size increases from 255

Posted on 2011-03-04
10
344 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 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

Preface I don't like visual development tools that are supposed to write a program for me. Even if it is Xcode and I can use Interface Builder. Yes, it is a perfect tool and has helped me a lot, mainly, in the beginning, when my programs were small…
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…
The goal of this video is to provide viewers with basic examples to understand opening and writing to files in the C programming language.
The goal of this video is to provide viewers with basic examples to understand and use conditional statements in the C programming language.

734 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