当前位置: 首页 > 工具软件 > S#arp Darc > 使用案例 >

char *s[]与char s[][]

太叔景同
2023-12-01

char *str1[]=charstr2[][]

1.二阶指针

char **p1=str1=str2

str1=&str1[0]

str2=&str2[0]=&&str2[0][0]

2.一阶指针

str1[0]=&a(a为所承载的内容,为字符串)

str2[0]=&str2[0][0](str2[0][0]为字符串的首位字符)

一般使用字符串数组,输入字符串到其中时即使用该一阶指针

需注意,应提前给该一阶指针分配内存,否则无法承载内容

#include <stdio.h>
#include <stdlib.h>

int main()
{
str1[0]=(char*)malloc(1000);//分配内存
str2[0]=(char*)malloc(1000);

scanf("%s",str1[0]);//输入字符串
scanf("%s",str2[0]);

printf("%s",str1[0]);//输出字符串
printf("%s",str2[0]);

free(str1[0]);//释放内存
free(str2[0]);
}

3.其他

str1[0]+n=str1[n]

str1[0][n]=str2[0][n](均表示各自第一个字符串的第n个字符)

 

 类似资料: