c-style字符字符串
C programming String Aptitude Questions and Answers: In this section you will find C Aptitude Questions and Answers on Strings, String is the set of characters and String related Aptitude Questions and Answers you will find here.
C編程String Aptitude問答:在本節中,您將找到有關字符串的C Aptitude問答,String是字符集,與String相關的Aptitude問答在這里可以找到。
#include <stdio.h>
#include <string.h>
int main()
{
int val=0;
char str[]="IncludeHelp.Com";
val=strcmp(str,"includehelp.com");
printf("%d",val);
return 0;
}
0
1
-1
Error
-1
Strings are not equal, hence strcmp will return -1.
0
1個
-1
錯誤
-1
字符串不相等,因此strcmp將返回-1。
#include <stdio.h>
#include <string.h>
int main()
{
char str[];
strcpy(str,"Hello");
printf("%s",str);
return 0;
}
Hello
Error
No Output
Null
Error: 'str' Unknown Size
At the time of str declaration, size is empty, it may be possible when you are initializing string with declaration (like char str[]="Hello";
你好
錯誤
無輸出
空值
錯誤:“ str”未知大小
在str聲明時,size為空,當您使用聲明初始化字符串時(例如char str [] =“ Hello”;
#include <stdio.h>
int main()
{
char str[8]="IncludeHelp";
printf("%s",str);
return 0;
}
IncludeHelp
IncludeH
Error
No Output
Error: Too many initializers/ array bounds overflow.
包括幫助
包含H
錯誤
無輸出
錯誤:初始化程序/數組邊界過多。
#include <stdio.h>
#include <string.h>
int main()
{
char str1[]="IncludeHelp",str2[]=".Com";
printf("%s",str1+strlen(str2));
return 0;
}
IncludeHelp.Com
udeHelp
Error
IncludeHelp4
udeHelp
Look the expression str1+strlen(str2)=> str1+4, since str1 is a character array, and str1+4 will point 4th index of str1, then udeHelp will print.
IncludeHelp.Com
udeHelp
錯誤
包括幫助4
udeHelp
查看表達式str1 + strlen(str2)=> str1 + 4,因為str1是一個字符數組,并且str1 + 4將指向str1的第4個索引,然后將輸出udeHelp。
#include <stdio.h>
int main()
{
char str[]="Hello%s%dFriends";
printf(str);
printf("\n");
printf("%s",str);
return 0;
}
HelloFriends
HelloFriendsHello%s%dFriends
Hello%s%dFriendsHello(null)0Friends
Hello%s%dFriendsGarbage Value
Hello(null)0Friends
Hello%s%dFriends
printf("%s",str); prints all string, but printf(str) prints the value instead of %s, %d .. etc (default value for %s is null and %d is 0.
你好朋友
你好朋友你好%s%dFriends
你好%s%dFriends您好(空)0個朋友
你好%s%dFriends垃圾價值
您好(空)0個朋友
你好%s%dFriends
printf(“%s”,str); 打印所有字符串,但printf(str)打印該值,而不是%s,%d等。(%s的默認值為null,%d為0。
#include <stdio.h>
int main()
{
int i;
char str[]="IncludeHelp";
for(i=0;str[i]!='\0';i++)
{
putchar(str[i]);
putchar('*');
}
return 0;
}
.
。
#include <stdio.h>
int main()
{
char str[]="value is =%d";
int a='7';
str[11]='c';
printf(str,a);
return 0;
}
value is =%d
value is =%c
value is =55
value is =7
value is =7
We can assign '7' into integer variable a, a will be 55, but str[11]='c' statement will replace 11th character of str 'd' to 'c', hence str will be "value is =%c.
and statement printf(str,a); will print "value is=7".
值是=%d
值是=%c
值是= 55
值= 7
值= 7
我們可以將'7'分配給整數變量a,a將為55,但是str [11] ='c'語句會將str'd'的第11個字符替換為'c',因此str將為“ value is =%c 。
和語句printf(str,a); 將顯示“值is = 7”。
#include <stdio.h>
int main()
{
char result,str[]="\0IncludeHelp";
result=printf("%s",str);
if(result)
printf("TRUE");
else
printf("FALSE");
return 0;
}
\0IncludeHelpTRUE
\0IncludeHelpFALSE
Error
FALSE
FALSE
str[]="\0IncludeHelp", str will be terminated by \0.
\ 0IncludeHelpTRUE
\ 0包括HelpFALSE
錯誤
假
假
str [] =“ \ 0IncludeHelp”,str將以\ 0終止。
#include <stdio.h>
#include <string.h>
int main()
{
if( printf("Hello") == strlen("Hello") )
printf("...Friends");
else
printf("...Enemies");
return 0;
}
Hello...Friends
Hello...Enemies
...Friends
...Enemies
Hello...Friends
Statement printf("Hello") will print "Hello" and return 5, and statement strlen("Hello") will return total number of characters (5) , hence condition is true.
你好朋友
你好...敵人
...朋友
...敵人
你好朋友
語句printf(“ Hello”)將打印“ Hello”并返回5,語句strlen(“ H??ello”)將返回字符總數(5),因此條件為true。
#include <stdio.h>
#include <string.h>
int main()
{
char s1[]="IncludeHelp";
char s2[10];
strncpy(s2,s1,5);
printf("%s",s2);
return 0;
}
Inclu
IncluGARBAGE_VALUE
Error
IncludeHelp
IncluGARBAGE_VALUE
strncpy is used to copy number of characters from one string to another...
strncpy(s2,s1,5) will move 5 characters from s1 to s2, but there is no NULL ('\0') character to terminate the string s2...IncluGARBAGE_VALUE will print.
包含
IncluGARBAGE_VALUE
錯誤
包括幫助
IncluGARBAGE_VALUE
strncpy用于將字符數從一個字符串復制到另一字符串...
strncpy(s2,s1,5)將5個字符從s1移至s2,但是沒有NULL('\ 0')字符可終止字符串s2。 將顯示IncluGARBAGE_VALUE。
#include <stdio.h>
#include <string.h>
int main()
{
char str[50]="IncludeHelp";
printf("%d...%d",strlen(str),sizeof(str));
return 0;
}
50...50
11...50
11...11
50...11
11...50
strlen returns the number of characters, and sizeof(str) returns total occupied size by str.
50 ... 50
11 ... 50
11 ... 11
50 ... 11
11 ... 50
strlen返回字符數, sizeof(str)返回按str占用的總大小。
#include <stdio.h>
int main()
{
char *str="IncludeHelp";
while(*str)
printf("%s\n",str++);
return 0;
}
IncludeHelp
IncludeHel
IncludeHe
..
IIncludeHelp
ncludeHelp
cludeHelp
..
PERROR
IncludeHelp
#include <stdio.h>
int main()
{
char *str="IncludeHelp";
while(*str)
printf("%s\n",str++);
return 0;
}
包括幫助
包括Hel
包括他
..
一世包括幫助
nclude幫助
cludeHelp
..
P錯誤
包括幫助
#include <stdio.h>
#define string char*
int main()
{
string myName="IncludeHelp";
printf("My name is =%s",myName);
return 0;
}
IncludeHelp
Error
char*
myName
IncludeHelp
string will be replaced by char *.
包括幫助
錯誤
字符*
我的名字
包括幫助
字符串將被替換為char *。
#include <stdio.h>
#include <string.h>
int main()
{
printf("%d...%d",sizeof("Hello"),strlen("Hello"));
return 0;
}
5...5
6...6
5...6
6...5
6...5
sizeof operator returns the size of the string including NULL character, and strlen returns the number of characters stored in string.
5 ... 5
6 ... 6
5 ... 6
6 ... 5
6 ... 5
sizeof運算符返回字符串的大小(包括NULL字符),而strlen返回存儲在字符串中的字符數。
#include <stdio.h>
#include <string.h>
int main(){
char str[]="Ihelp";
while(str+strlen(str))
printf("*");
return 0;
}
ERROR
No output
***... infinite times
*
***... infinite times
str+strlen(str) in this expression str is a pointer that return memory address and str+strlen(str) = str+5, also an address (integer value), so expression str+strlen(str) will return non zero value.
錯誤
無輸出
*** ...無限次
*
*** ...無限次
STR + strlen的(STR)在這個表達式str是一個指針返回存儲器地址和STR + strlen的(STR)= STR + 5,也是一個地址(整數值),所以表達STR +的strlen(STR)將返回非零值。
翻譯自: https://www.includehelp.com/c-programs/c-strings-aptitude-questions-and-answers.aspx
c-style字符字符串