黑马程序员技术交流社区

标题: 需求 把char *str="123abc";变成一个字符数组; [打印本页]

作者: chenweile_hi    时间: 2015-10-27 21:54
标题: 需求 把char *str="123abc";变成一个字符数组;
#include <stdio.h>
#include <string.h>
int main(){
    char *str="123abc";
    char add[strlen(str)+1];
    for (int i=0; i<strlen(str); i++) {
        add=str;
    }
    printf("%s,%s\n",str,add);
    return 0;
}


作者: yanggangcl    时间: 2015-10-28 19:26
楼主运行这个代码可行?
作者: cqswzqcj    时间: 2015-10-28 19:42
char add[strlen(str)+1];    这句话就错了,数组定义要用常量表达式,因为编译器在编译阶段就需要知道,而你那个函数是在执行阶段才得出的值。
作者: c9527    时间: 2015-10-29 19:01
Array type 'char [strlen(str) + 1]' is not assignable




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2