Contact Us

Continuing on with Strings with C

The C programming language is a programming languages first created between 1969 and 1973 by Dennis Ritchie and has been the basis of many other programming languages since.

Here we will be carrying on from our initial post “Beginning with C” with a short lesson on strings in C

Strings with C

Strings in C are actually arrays of characters with a special null byte character indicating where each string ends.

What are strings?

Strings are arrays of characters and string literals are words surrounded by double quotation marks, for example:

“Hello World”

We mentioned that each string is terminated with a special null byte character ‘�’ which has the value 0, which means that if we have a string of 30 letters, it actually holds 31 places in an array.

Using strings

Strings are of course very useful for holding long inputs such as names, email addresses, passwords etc. You can use scanf() to input a string but this will terminate the string after the first space. In addition as scanf() doesn’t know how big an array will be you can end up with “buffer overflow” errors when a user inputs a string that is longer than the size of the string.

The simplest way around this problem is to use the fgets() function which can be used as follows:

fgets( string, 6, stdin );

This will open up our array called string, give the length and then use the input from the user to allocate each character to our string array.

We can then print this using our new %s identifier in printf as follows:

char string[6];
fgets( string, 6, stdin );
printf( “Your name is %s”, string );

This is enough for today. If you would like any help with your web or development applications or projects then why not get in contact with us here at Network Intellect.

This article was posted by

Leave a Reply

What our clients say

"It’s like having your own in-house digital marketing consultancy rather than an external company. I no longer think about them as a supplier. They’re part of the team."
Marketing Manager, Education
"They have always been professional and focused on delivering results in a timely and cost effective manner. It is enlightening to have an organisation that takes the time to make recommendations on actual data analysis."
Business Manager, Charity
"They (Network Intellect) continue to exhibit their digital expertise by helping us to establish a competitive advantage by pushing the boundaries and innovating their technology and performance solutions."
Head of Marketing Communications, Education
"Because of their talent, expertise and level of service our on-line business has increased dramatically."
Founder, Electronics
"I would have no hesitation in recommending them as an analytics partner to understand and improve the performance of a website."
Vice President, Retail
Network Intellect continue to give us a fantastic service, fast and friendly and are always ready to go the extra mile. They have gone above and beyond the call of duty to deliver our results.
Director, E-Cigarette Web
"We found that Network Intellect had the depth of knowledge we needed and after speaking to them a few times we decided to go with them. It’s the best decision we’ve made in some time."
Owner, Retail
"Their services offered great value for money. I would not hesitate to recommend them as a digital partner to others."
Strategic Marketing Manager, Education
"Jason and his team at Network Intellect embody efficiency and efficacy. I would have no hesitation in recommending this excellent company to others."
Marketing Manager, Education
Network Intellect have managed our product data feeds with exceptional care and meticulous detail. I know I can trust them to make the right decisions for our business."
Director, E-Commerce
"It’s like having your own in-house digital marketing consultancy rather than an external company. I no longer think about them as a supplier. They’re part of the team."
Marketing Manager, Education
Read all testimonialsRead all testimonials

We can help you be great

We have friendly staff ready to help you get on your path to greatness...
Network Intellect Menu