大家好,今天小编关注到一个比较有意思的话题,就是关于c语言字符串的地址的问题,于是小编就整理了3个相关介绍c语言字符串的地址的解答,让我们一起看看吧。
c语言如何表示字符串的位置?
char *p="123";
和
char p1[4]={'1','2','3','0'};
其实是一样的
试着打印出来
printf(p);
printf(p1);
2. 因为在C++中,字符串被表示为字符数组,可以通过索引来访问数组中的元素。
字符串的第一个字符的索引为0,依次递增。
例如,对于字符串str,要取第i位的字符,可以使用str[i]来获取。
除了使用下标,还可以使用字符串的成员函数来取字符串的某一位,例如使用str.at(i)来获取第i位的字符。
c语言中怎样取字符串的地址?
字符串是一连串地址连续的内存空间,每个地址对应字符串元素的地址。
我们一般说的字符串的地址,就是指字符串首元素的地址。
比如:char
str[10];这样的数组。它的地址就是其str[0]的地址。
所以可以表示为str,或者&str[0]。
如果说取其他元素的地址,&str[对应下标]就可以了。
因为地址连续,定义指针接收,还可以通过指针加减获取对应元素地址。
比如char
*p=&str[2];(我们让指针指向第3个元素地址),那么p++;p就是指向了第4个元素地址。同理p--;就指向第2个元素地址。
注意,数组名str,可以表示数组首地址,但其本身是常量指针,不能赋值。
C语言实现如何在字符串中找到给定的字符子串的位置?
用strstr这个函数包含文件:string.h函数名: strstr 函数原型:extern char *strstr(char *str1, char *str2)
;功能:找出str2字符串在str1字符串中第一次出现的位置(不包括str2的串结束符)。
返回值:返回该位置的指针,如找不到,返回空指针。源代码:#include<stdio.h>#include<string.h>//调用string.h中的strstr函数void main(){ char ch1[255]="abcde"; char ch2[100]="cd"; char* ch;//用于接受返回值 if((ch=strstr(ch1,ch2))==NULL){//说明没有要找的字符串 printf("-1\n"); }else{//说明找到了那个字符串 printf("%d\n",ch-ch1+1)
;//cde的地址减去abcde的地址+1 } }
到此,以上就是小编对于c语言字符串的地址的问题就介绍到这了,希望介绍关于c语言字符串的地址的3点解答对大家有用。