C语言字符指针怎么输入?谢谢

Python019

C语言字符指针怎么输入?谢谢,第1张

例:

#include"stdio.h"

#include"stdlib.h"

main()

{

char*p[10],*temp

inti,j,k

for(i=0i<10i++)

{

p[i]=(char*)malloc(sizeof(char)*50)//开辟内存

}

for(i=0i<10i++)

{

printf("输入第%d本书的书名\n",i+1)

gets(p[i])

}

for(i=0i<10i++)

{

printf("%s\n",p[i])

}

}

扩展资料

C语言字符数组字符串的使用

用来存放字符的数组称为字符数组,例如:

char c[10]

字符数组也可以是二维或多维数组。例如:

char c[5][10]

字符数组也允许在定义时进行初始化,例如:

char c[10]={'c', ' ', 'p', 'r','o', 'g', 'r', 'a','m'}// c[9]未赋值,所以为默认值’\0’

当对全体元素赋初值时也可以省去长度说明。例如:

char c[]={'c', ' ', 'p', 'r', 'o', 'g', 'r', 'a', 'm' }

这时c数组的长度自动定为9。

字符数组和普通数组一样,也是通过下标引用各个元素。

那不都是“人规定”的嘛!C/C++没有字符串变量,所以字符串是利用字符数组(不是字符串数组,字符串数组是另一个意思,得用二维数组实现)操作的。由于数组是同类型元素的集合,只要知道首指针就可以操作了,所以字符串只是把字符数组的第一个元素(下标为0的元素)的地址赋给一个指针变量就可以通过这个指针变量做所有操作了……比如在printf("%s\n",string)中,在%s控制下并不是输出指针string的值,而是从string这个地址开始一个字符一个字符地把指针指向的字符打印出来,直到遇到'\0'为止;而用%p控制才能打印出string的地址值来。