
正文
c++语言字符串指针,c语言字符串指针赋值
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
C语言中的字符串指针
c语言中,char* 表示字符指针类型,当其指向一个字符串的第一个元素时,它就可以表示这个字符串。
s代表的是字符串指针,而字符数组名本身就是一个指针 用二维数组。
首先确定是字符指针数组还是字符数组指针,前者是一个数组,数组每个元素都是一个字符指针,后者是一个指向字符数组的指针。
中使用%s, 说明输出的是字符串,要求参数应该是 char *类型,而后会从该参数指向的位置开始输出,直到遇到\0为止。printf中使用%c,说明输出的是字符,这个时候参数是char类型,也就可以是*p,这时输出的是一个字符。
如果输入12345,那么p指向1,即p中存放着1的地址。没有字符串的指针和指针指向的内容不能修改一说。
char *s的s是指针,s中保存一个地址,指向s[0],也就是说s中保存的是数组的首地址。
相关问答
Q1: c语言中如何借用指针输出字符串?
1、程序先从键盘输入一个字符串,然后获取字符串的长度和指向字符串首尾的指针。接着,使用指针交换相应位置上的字符,完成字符串逆序存放。最后输出逆序存放后的字符串。
2、按字节输出。使用putchar从*p1一直输出到*p2。样例代码如下:while(p1p2){ putchar(*p1++);}2 将p2位置作为字符串结束点,临时赋值为0,并在输出后恢复。
3、C语言中scanf是标准库函数,主要用来接收用户输入的数据。 scanf与printf函数一样,都被定义在头文件stdio.h里,因此在使用scanf函数时要加上#include stdio.h。
4、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。在test.cpp文件中,输入C语言代码:int q = 10;int* p = printf(%d\n, *p); 。
Q2: 关于C语言的字符串指针的问题?
1、分析:y是字符串数组首元素3的地址,*y的值就是字符3,再加上2,就是字符5(也可以说是字符5的ASC码值)。 如有定义char z[2][4]={MAT, LAB};,则表达式*(*z+2)的值是 T。
2、char * strrev (char * string){char *start = string , *left = string,ch;//start和left指向字符串第一个字符。
3、char *b只是个指针,并没有为它分配内存,所以不能自增,自增后它指向内存是不确定的。
4、首先char *str1[500]={\0},*str2[500]={\0}这里就大错了。
5、而*p代表的是1这个存储地址保存的值。那就是h。所以,你输出时,只能用字符输出:%c。(p+1)则代表2这个存储地址保存的值。
6、chp (这是一个字符型的指针,它指向的是“ABCD”这个字符串的首地址,不是这个字符串的地址)你如果要用printf();就要写成printf(“%p”,*chp)。。要是printf(“%s”,*chp),就错了。
关于c++语言字符串指针和c语言字符串指针赋值的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。








