小弟初学linux,斗胆来到内核源码区向各位高手请教一个初级问题,怎样调出linux中的源代码?还望各位赐教,讲解时可以以strcpy()函数为例.谢谢!
为什么strcpy函数中要一个char * tmp; char* strcpy(char* s, const char* ct) { char *tmp = s; while (*s++ = *ct++); return tmp; } 我不加tmp直接 char* strcpy(char* s, const char* ct) { while (*s++ = *ct++); return ct; } 怎么结果就为空,谢谢了
看看C的一些字符串操作函数,说是用strcpy时一定要提供足够的空间,然后我没有提供。[code] int main() { char *str = "hello world."; char s2[5] = "dds"; strcpy(s2, str); printf("%s\n", str); //printf("%s\n", s2);//这里可以正常显示,因为strcpy一定会复制到s2的,只不过会把后面的内容覆盖而已 return 0; } [/code]当我这样的时候程序挂掉。不懂 然后我改成下面的代码:发现str和原来不一样了,...
上次问到的 /** * strcpy - Copy a %NUL terminated string * @dest: Where to copy the string to * @src: Where to copy the string from */ char * strcpy(char * dest,const char *src) { char *tmp = dest; while ((*dest++ = *src++) != '\0') /* nothing */; return tmp; } 即使不是源代码我也想学学啊? 其它还有没有这种系统函数的实现可以学习一下的? 谢谢了!!!
#include
本帖最后由 hongjiujing 于 2013-07-17 16:35 编辑 119 char *strncpy(char *dest, const char *src, size_t count) 120 { 121 char *tmp = dest; 122 123 while (count) { 124 if ((*tmp = *src) != 0) 125 src++; 126 tmp++; 127 count--; 128 } 129 return dest; 130 } 131 EXPORT_SYMBOL(strncpy); 94 char *strcpy(char *dest, const char *src) 95 { 96 ch...
本帖最后由 wk-sky 于 2012-06-21 15:22 编辑 char *s1="12345",*s2="1234"; printf("%d\n",strlen(strcpy(s1,s2))); 提示段错误
struct info { char *name; long x; char *ov; char *type; char *size; char *object; }; void main() { int infonum=0; long t=0xfffffffe; int infonum=0; ........................................... strcpy(array[infonum].name,tempinfo[0]); array[infonum].x=(strtol(tempinfo[1],&p,16)&t); ...
char *str = NULL; str = (char*)malloc(sizeof(char)*10); strcpy(str, "hello"); str = "hello"; strcpy(str, "hello");和 str = "hello";有什么区别