字符串数组就是一个数组,他的每一个元素都是一个字符串。
在c语言中字符串是以\0结尾的一串字符,如“abcd1234\0”
字符串数组str[2]={"abc\0","123\0"}
\0是结束符。字符串数组里的字符长度都为3
打印的时候只显示abc,\0不显示
#include<stdio.h>#include<string.h>char *start(char *wz)int main(){ char *sys = NULL char xz,wz[99]="www" scanf("%s",&xz) if (xz=='1') sys=start(wz)/*将wz值传入start*/ printf("%s",sys)if (sys != NULL)// 注意:分配内存以后一定要释放
free(sys) return 0}char *start(char *wz){
char* str = (char*)malloc(99) // 堆中分配内存
strcpy(str, "am start -a android.intent.action.VIEW -d http://") strcat(str,wz) return str }
其实不建议以这种方式来写,start函数可以写成2元函数,一个函数传入参数,一个函数传出结果。
void start(char* pOut, char* pIn)
{
strcpy(pOut, "am start -a android.intent.action.VIEW -d http://")strcat(pOut, pIn)
}