QBl*_*QBl 1 c arrays pointers char
假设我有一个 char *str 并且我想使用指针和递增来一次一个地为其分配字符?
我已经搞定了 :
char *str;
char c = 'a';
*str++ = c;
Run Code Online (Sandbox Code Playgroud)
但这不起作用。
我怎样才能做到这一点 ?
小智 5
str只是一个指针。它没有指向任何有效的地方(特别是没有指向您可以写入的某些内存)。一个简单的可能性是让它指向一个数组:
char buf[1024] = {0}; // room for 1024 chars (or 1023 + a 0 byte for a string)
char *str = buf;
char c = 'a';
*str++ = c;
Run Code Online (Sandbox Code Playgroud)