桥驿听雨落 发表于 2022-3-9 23:00:44

连接两个字符串为什么不能这样操作啊,求助大神。。

char* f(char*a , char *b){
    int size1 = sizeof(a);
    int i ,j;
    for( i = size1-1 ,j = 0; b != '\0' ; i++,j++){
      a = b;

    }
    if(b = '\0')
    a = '\0';
    return a;
}

或者这样也是错的

int main(){
char *a = "qwe qwe";

char* b = "1235435";
int size1 = sizeof(a);
a = '2';
printf("%c",a);

    return 0;
}

小白a123456 发表于 2022-3-9 23:00:45

桥驿听雨落 发表于 2022-3-9 23:24
ok,char*指向的是常量,值不能改变,否则会报错

a是一个指针类型的形参,而指针的字节大小之为8的,不能使用sizeof(a)来计算传入的实参的数组字节大小

桥驿听雨落 发表于 2022-3-9 23:24:03

ok,char*指向的是常量,值不能改变,否则会报错
页: [1]
查看完整版本: 连接两个字符串为什么不能这样操作啊,求助大神。。