memset(array+2,'\0',90);
可以这样来清空数组的第三行么
7 个解决方案
#1
可以,但是最好写成这样
memset(array+2,'\0', sizeof(char)*90 );
memset(array+2,'\0', sizeof(char)*90 );
#2
可以·
对于char来说那样就可以了
对于char来说那样就可以了
#3
可以实现
但memset(array+2,0,90);应该也可以吧。
但memset(array+2,0,90);应该也可以吧。
#4
我觉得标准的应该是:
*(array+2)或者array[2]
array+2只能用在静态分配吧,估计和内存分配方式有关(一个9*90的一维空间)
*(array+2)或者array[2]
array+2只能用在静态分配吧,估计和内存分配方式有关(一个9*90的一维空间)
#5
都说完了。。。
memset(array+2,'\0', sizeof(char)*90 );
和
memset(array+2,0, sizeof(char)*90 );
是一样的。
memset(array+2,'\0', sizeof(char)*90 );
和
memset(array+2,0, sizeof(char)*90 );
是一样的。
#6
sizeof(char)==1;
所以:
memset(array+2,0, 90);是可以的
所以:
memset(array+2,0, 90);是可以的
#7
当然可以,
memset 处理连续的空间,
所以, 只要你的清除空间是连续的,
那么都是可以使用这个 memset的,
问题是这个 长度 nlen 参数千万别搞错鸟 ...
memset 处理连续的空间,
所以, 只要你的清除空间是连续的,
那么都是可以使用这个 memset的,
问题是这个 长度 nlen 参数千万别搞错鸟 ...
#1
可以,但是最好写成这样
memset(array+2,'\0', sizeof(char)*90 );
memset(array+2,'\0', sizeof(char)*90 );
#2
可以·
对于char来说那样就可以了
对于char来说那样就可以了
#3
可以实现
但memset(array+2,0,90);应该也可以吧。
但memset(array+2,0,90);应该也可以吧。
#4
我觉得标准的应该是:
*(array+2)或者array[2]
array+2只能用在静态分配吧,估计和内存分配方式有关(一个9*90的一维空间)
*(array+2)或者array[2]
array+2只能用在静态分配吧,估计和内存分配方式有关(一个9*90的一维空间)
#5
都说完了。。。
memset(array+2,'\0', sizeof(char)*90 );
和
memset(array+2,0, sizeof(char)*90 );
是一样的。
memset(array+2,'\0', sizeof(char)*90 );
和
memset(array+2,0, sizeof(char)*90 );
是一样的。
#6
sizeof(char)==1;
所以:
memset(array+2,0, 90);是可以的
所以:
memset(array+2,0, 90);是可以的
#7
当然可以,
memset 处理连续的空间,
所以, 只要你的清除空间是连续的,
那么都是可以使用这个 memset的,
问题是这个 长度 nlen 参数千万别搞错鸟 ...
memset 处理连续的空间,
所以, 只要你的清除空间是连续的,
那么都是可以使用这个 memset的,
问题是这个 长度 nlen 参数千万别搞错鸟 ...