C

Topic: Strings

Is there a way to switch on strings? 

Not directly. Sometimes, it's appropriate to use a separate function to map strings to integer codes, and then switch on those:#define CODE_APPLE 1#define CODE_ORANGE 2#define CODE_NONE 0switch(classifyfunc(string)) {case CODE_APPLE:...case CODE_ORANGE:...case CODE_NONE:...}where classifyfunc looks something likestatic struct lookuptab {char *string;int code;} tab[] = {{"apple", CODE_APPLE},{"orange", CODE_ORANGE},};classifyfunc(char *string){int i;for(i = 0; i < sizeof(tab) / sizeof(tab[0]); i++)if(strcmp(tab[i].string, string) == 0)return tab[i].code;return CODE_NONE;}Otherwise, of course, you can fall back on a conventional if/else chain:if(strcmp(string, "apple") == 0) {...} else if(strcmp(string, "orange") == 0) {...}

Browse random answers:

How to compare two strings in c ?
What is the difference between System.String and System.StringBuilder classes?
How would you implement a sbstr()function that extract a sub string from a givn string?
How can i print a?%? character in a print format string? 
Explain one method to process an entire string as one unit?
Can we use string in switch statement?
What is the difference between strings and character arrays ?
How do you print only part of a string?
How to type a string without using printf function?
How can I convert a number to a string?
How can I convert a string to a number?
What is the difference between a string copy (strcpy) and a memory copy (memcpy)? When should each be used?
What is the difference between a string and an array? 
How to get string in files and print the string in the reverse order?
If the two strings are identical, then strcmp() function returns?
What is the difference between the functions strdup and strcpy in C?
What do you mean by String objects are immutable?
How do you create empty strings in C?
Write a scanf statement which can store one line of string which includes white space?
What will be output when you will execute following c code?
#include&lt;stdio.h&gt;
void main(){ 
char arr[7]=&quot;Network&quot;; 
printf(&quot;%s&quot;,arr);
}
Which of the following function sets first n characters of a string to a given character?
What will be the output of the program ?

#include&lt;stdio.h&gt;#include&lt;string.h&gt;

int main(){ char str1[20] = &quot;Hello&quot;, str2[20] = &quot; World&quot;; printf(&quot;%sn&quot;, strcpy(str2, strcat(str1, str2))); 
 
return 0;
}
Without using any semicolon (;) in program write a c program which output is: HELLO WORLD?
How can I remove the trailing spaces from a string?
How can I right-justify a string?
How can you tell whether two strings are the same?
How do you print only part of a string?
Is there a way to switch on strings? 
How would you use the functions fseek(), freed(), fwrite() and ftell()?
Difference between strdup and strcpy?
What are strings and how can they be represented in c language?
How can you tell whether two strings are the same?
Difference between strdup and strcpy?
How do I use c-strings to write a c program that Removes multiple spaces between words in a paragraph?
What the advantages of using Unions?
String Processing --- Write out a function that prints out all the permutations of a string. For example, abc would give you abc, acb, bac, bca, cab, cba.?
Can we convert an unsigned long integer value to a string?
What about strpbrk( )?
What about ceil( ) and floor( )?
Why is it not possible to scan strings from keyboard in case of array of pointers to string?