首页 > 试题广场 >

设有char *s1="ABCDE", *s2="ABCDE

[单选题]

设有char *s1="ABCDE", *s2="ABCDE",*s3=s1;,下列表达式中值等于true的是()

  • strcmp(s1,s2)
  • strcmp(s1,s3)==1
  • strcmp(s2,s3)==-1
  • strcmp(s1,s3) ==0
设这两个字符串为str1,str2,
若str1==str2,则返回零;
若str1<str2,则返回负数;
若str1>str2,则返回正数。


发表于 2018-05-07 21:14:08 回复(1)
指针存的是首字母的地址,即*s1,*s2,*s3,
发表于 2022-03-03 10:21:33 回复(0)
若用数组名作为调用函数的实参,则传递给形参的是(  )。
  A.数组存储首地址  B.数组的第一个元素值
  C.数组中全部元素的值  D.数组元素的个数 
发表于 2019-04-11 23:38:15 回复(2)
C 库函数 int strcmp(const char *str1, const char *str2) 把 str1 所指向的字符串和 str2 所指向的字符串进行比较

该函数返回值如下:

  • 如果返回值 < 0,则表示 str1 小于 str2。
  • 如果返回值 > 0,则表示 str2 小于 str1。
  • 如果返回值 = 0,则表示 str1 等于 str2。

发表于 2019-07-16 16:59:48 回复(0)
这些字符串都存储在.rodata区,也就是说在同一个程序中,访问的字符串相同的话实际上就是访问同一个字符串,所以除了指针名不同外,字符串的地址....都是一样的,*str1,*str2,*str3
发表于 2023-09-27 15:40:50 回复(0)
发表于 2023-07-22 16:12:31 回复(0)
定义了三个指针变量s1,s2,s3,前两个方式相当于是直接把文字常量区中“ABCDE”的地址拷贝到s1和s2中,而第三种方式相当于把s1的内容拷贝到s3中,也是指向“ABCDE”的区域
发表于 2022-07-26 10:45:19 回复(0)
strcmp 相等返回0,不等返回1
发表于 2020-02-16 12:22:22 回复(0)
指向首字母
发表于 2019-08-21 08:37:33 回复(0)
strcmp比较两个字符串,s1<s2>s2,strcmp(s1,s2)>0,s1=s2,strcmp(s1,s2)=0</s2>
编辑于 2024-03-22 13:56:24 回复(0)
设这两个字符串为str1,str2, 若str1==str2,则返回零; 若str1<str2>str2,则返回正数</str2>
发表于 2023-01-28 13:01:01 回复(0)
比较字符,str1-str2>0,返回正数
发表于 2022-04-27 09:20:04 回复(0)
strcmp比较2个字符串,相等返回0
发表于 2020-02-23 09:59:01 回复(0)
感觉这里*s3=s1与*s3=&*s1等价。这样理解OK吗?
发表于 2019-02-18 20:37:29 回复(0)