由买买提看人间百态

topics

全部话题 - 话题: strcpy
1 2 3 4 下页 末页 (共4页)
f******p
发帖数: 173
1
来自主题: JobHunting版 - Thread safe strcpy ??
搜了一下,https://groups.google.com/forum/#!topic/microsoft.public.vc.mfc/
yBrUjgvGwf8 里面有一个回复我觉得挺不错,大家来说说怎样
Much better to allocate a block of storage (either a general "new" or
your own sub-allocator), copy the string into it, pass it to the recipient,
and let the
recipient release it (either delete or your own deallocation back to your
pool of
buffers). This means that there is never more than one thread, ever, using
the storage.
You do not protect the function; you protect the area it is copying ... 阅读全帖
S*********r
发帖数: 5693
2
【 以下文字转载自 JobHunting 讨论区 】
发信人: roufoo (五经勤向窗前读), 信区: JobHunting
标 题: 请问strcpy()和memcpy()的写法问题
发信站: BBS 未名空间站 (Wed Jun 9 12:54:07 2010, 美东)
我看到的标准strcpy()函数通常都是如下写法:
char *strcpy(char *strDest, const char *strSrc)
{
assert ((strDest!=NULL)&&(strSrc!=NULL));
char *strDest2=strDest;

while ((*strDest2++=*strSrc++)!='\0')
{
}
return strDest;
}
我看到的标准memcpy()函数通常都是如下写法:
void *memcpy(void *ptrDest, const void *ptrSrc, size_t size)
{
assert((ptrDest!=NULL)&&(ptrSrc!=NULL);

voi
r****o
发帖数: 1950
3
【 以下文字转载自 JobHunting 讨论区 】
发信人: roufoo (五经勤向窗前读), 信区: JobHunting
标 题: 请问strcpy()和memcpy()的写法问题
发信站: BBS 未名空间站 (Wed Jun 9 12:54:07 2010, 美东)
我看到的标准strcpy()函数通常都是如下写法:
char *strcpy(char *strDest, const char *strSrc)
{
assert ((strDest!=NULL)&&(strSrc!=NULL));
char *strDest2=strDest;

while ((*strDest2++=*strSrc++)!='\0')
{
}
return strDest;
}
我看到的标准memcpy()函数通常都是如下写法:
void *memcpy(void *ptrDest, const void *ptrSrc, size_t size)
{
assert((ptrDest!=NULL)&&(ptrSrc!=NULL);

voi
r****o
发帖数: 1950
4
来自主题: JobHunting版 - 请问strcpy()和memcpy()的写法问题
我看到的标准strcpy()函数通常都是如下写法:
char *strcpy(char *strDest, const char *strSrc)
{
assert ((strDest!=NULL)&&(strSrc!=NULL));
char *strDest2=strDest;

while ((*strDest2++=*strSrc++)!='\0')
{
}
return strDest;
}
我看到的标准memcpy()函数通常都是如下写法:
void *memcpy(void *ptrDest, const void *ptrSrc, size_t size)
{
assert((ptrDest!=NULL)&&(ptrSrc!=NULL);

void *ptrDest2=ptrDest;
void *ptrSrc2=ptrSrc;
while (size-- >0)
*ptrDest2++=*ptrSrc2++;
return ptrDest;
}
我不明白的是为什么memcpy()函数里面的pt
u**s
发帖数: 50
5
来自主题: JobHunting版 - 请问strcpy()和memcpy()的写法问题
1. I think saving "ptrSrc" in memcpy has no special purpose. Someone just
uses one extra local variable.
2. In real system, those codes (strcpy & memcpy & ...) usually will never
get chance to run because there are much faster arch-dependent assembly
versions for all those functions. Search memcpy/strcpy/memmove in linux
kernel tree/glibc you will find the real codes.
And, I roughly remember in the comments at the beginning of those codes
Linus wrote something like, "The following implementati
d****p
发帖数: 685
6
The strcpy doesn't need extra copy because there is no type conversion from
void* to char*
c***2
发帖数: 838
7
Here's the full file. You may compile and run: any case I missed?
==================================================================
/* wild.c
*/
#include
#include
#include
#define STR_SIZE 256
//===========================================================
int matchndots(const char *text, const char *dstr, int len)
{
while(len&&*text&&*dstr&&(*text==*dstr || *dstr=='.')){
text++;
dstr++;
len--;
}

if(!len)
return 1;
... 阅读全帖
a********e
发帖数: 5251
8
哈哈。有些长,但值得看。
==============================================================
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大学生的女生报警,她的两名同学(一男一
女)早晨去龙口涧风景区游玩,但到现在却跟他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握的情况,这两名学生游玩后当晚在旅馆投宿,随后关掉手机。
第二天,两人开机后发现学校正在寻找他们,立即与校方取得了联系。
“这属于一个误会,虚惊一场。”昨晚,北大新闻发言人赵部长证实了该消息。他说,
学生周末出去旅游是个人权利,学校无权干涉。
北大清华的才子们没有放过任何一个表露才华的... 阅读全帖
a****b
发帖数: 3588
9
【 以下文字转载自 Joke 讨论区 】
发信人: quix (uglyDuck), 信区: Joke
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT (转载)
发信站: BBS 未名空间站 (Tue Feb 22 11:00:48 2011, 美东)
发信人: alwaystrue (nicheng), 信区: ChinaNews
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT
发信站: BBS 未名空间站 (Tue Feb 22 03:22:38 2011, 美东)
哈哈。有些长,但值得看。
==============================================================
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大... 阅读全帖
c******n
发帖数: 4216
10
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大学生的女生报警,她的两名同学(一男一
女)早晨去龙口涧风景区游玩,但到现在却跟他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握的情况,这两名学生游玩后当晚在旅馆投宿,随后关掉手机。
第二天,两人开机后发现学校正在寻找他们,立即与校方取得了联系。
“这属于一个误会,虚惊一场。”昨晚,北大新闻发言人赵部长证实了该消息。他说,
学生周末出去旅游是个人权利,学校无权干涉。
北大清华的才子们没有放过任何一个表露才华的机会,各种版本的作品喷薄而出:水浒
版、琼瑶版。。。。。。
水浒版:
第X回
鸳鸯双栖神龙岭 鹰犬三探灵蛇山
夜黑得浓重。
那姐儿便对那汉子道:“不... 阅读全帖
S******T
发帖数: 1093
11
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大学生的女生报警,她的两名同学(一男一
女)早晨去龙口涧风景区游玩,但到现在却跟他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握的情况,这两名学生游玩后当晚在旅馆投宿,随后关掉手机。
第二天,两人开机后发现学校正在寻找他们,立即与校方取得了联系。
“这属于一个误会,虚惊一场。”昨晚,北大新闻发言人赵部长证实了该消息。他说,
学生周末出去旅游是个人权利,学校无权干涉。
北大清华的才子们没有放过任何一个表露才华的机会,各种版本的作品喷薄而出:水浒
版、琼瑶版。。。。。。
水浒版:
第X回
鸳鸯双栖神龙岭 鹰犬三探灵蛇山
夜黑得浓重。
那姐儿便对那汉子道:“不... 阅读全帖
c***u
发帖数: 5501
12
haha

【 以下文字转载自 Stock 讨论区 】
发信人: abbabb (白菜心), 信区: Stock
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT (转载)
发信站: BBS 未名空间站 (Tue Feb 22 22:12:36 2011, 美东)
发信人: quix (uglyDuck), 信区: Joke
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT (转载)
发信站: BBS 未名空间站 (Tue Feb 22 11:00:48 2011, 美东)
发信人: alwaystrue (nicheng), 信区: ChinaNews
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT
发信站: BBS 未名空间站 (Tue Feb 22 03:22:38 2011, 美东)
哈哈。有些长,但值得看。
==============================================================
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日... 阅读全帖
h******e
发帖数: 1123
13
【 以下文字转载自 Sex 讨论区 】
发信人: honkdude (黄督德), 信区: Sex
标 题: 关机门 - 各种强大的叙述,超级油菜
发信站: BBS 未名空间站 (Fri Feb 25 17:41:01 2011, 美东)
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科
派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下
几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所长介绍,前晚6
时50分,他们接
到一名自称北大学生的女生报警,她的两名同学(一男一女)早晨去龙口涧风景区游玩,
但到现在却跟
他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握的情况,这两名学生游玩后当晚在旅馆投宿,随后关掉手机。
第二天,两人开机后发现学校正在寻找他们,立即与校方取得了联系。
“这属于一个误会,虚惊一场。”昨晚,北大新闻发言人赵部长证实了该消息... 阅读全帖
v******s
发帖数: 6949
14
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大学生的女生报警,她的两名同学(一男一
女)早晨去龙口涧风景区游玩,但到现在却跟他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握的情况,这两名学生游玩后当晚在旅馆投宿,随后关掉手机。
第二天,两人开机后发现学校正在寻找他们,立即与校方取得了联系。
“这属于一个误会,虚惊一场。”昨晚,北大新闻发言人赵部长证实了该消息。他说,
学生周末出去旅游是个人权利,学校无权干涉。
北大清华的才子们没有放过任何一个表露才华的机会,各种版本的作品喷薄而出:水浒
版、琼瑶版。。。。。。
水浒版:
第X回
鸳鸯双栖神龙岭 鹰犬三探灵蛇山
夜黑得浓重。
那姐儿便对那汉子道:“不... 阅读全帖
h********8
发帖数: 7355
15
【 以下文字转载自 LosAngeles 讨论区 】
发信人: SAINTPIT (圣坑), 信区: LosAngeles
标 题: 转自开心,也许我少见多怪,但有的写得是真好。
发信站: BBS 未名空间站 (Mon Jan 24 00:40:41 2011, 美东)
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大学生的女生报警,她的两名同学(一男一
女)早晨去龙口涧风景区游玩,但到现在却跟他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握的情况,这两名学生游玩后当晚在旅馆投宿,随后关掉手机。
第二天,两人开机后发现学校正在寻找他们,立即与校方取得了联系。
“这属于一个误会,虚惊一场。”昨晚,北大新... 阅读全帖
q**x
发帖数: 1636
16
【 以下文字转载自 ChinaNews 讨论区 】
发信人: alwaystrue (nicheng), 信区: ChinaNews
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT
发信站: BBS 未名空间站 (Tue Feb 22 03:22:38 2011, 美东)
哈哈。有些长,但值得看。
==============================================================
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大学生的女生报警,她的两名同学(一男一
女)早晨去龙口涧风景区游玩,但到现在却跟他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握... 阅读全帖
v******s
发帖数: 6949
17
【 以下文字转载自 Girl 讨论区 】
发信人: verithas (这货不是猫), 信区: Girl
标 题: 北大“关机嘿咻门”事件原版以及各种匪夷所思的天才版本
发信站: BBS 未名空间站 (Tue Feb 22 11:43:19 2011, 美东)
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大学生的女生报警,她的两名同学(一男一
女)早晨去龙口涧风景区游玩,但到现在却跟他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握的情况,这两名学生游玩后当晚在旅馆投宿,随后关掉手机。
第二天,两人开机后发现学校正在寻找他们,立即与校方取得了联系。
“这属于一个误会,虚惊一场。”昨晚,北大新闻发言人赵... 阅读全帖
z****l
发帖数: 687
18
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大学生的女生报警,她的两名同学(一男一
女)早晨去龙口涧风景区游玩,但到现在却跟他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握的情况,这两名学生游玩后当晚在旅馆投宿,随后关掉手机。
第二天,两人开机后发现学校正在寻找他们,立即与校方取得了联系。
“这属于一个误会,虚惊一场。”昨晚,北大新闻发言人赵部长证实了该消息。他说,
学生周末出去旅游是个人权利,学校无权干涉。
北大清华的才子们没有放过任何一个表露才华的机会,各种版本的作品喷薄而出:水浒
版、琼瑶版。。。。。。
水浒版:
第X回
鸳鸯双栖神龙岭 鹰犬三探灵蛇山
夜黑得浓重。
那姐儿便对那汉子道:“不... 阅读全帖
C********g
发帖数: 9656
19
【 以下文字转载自 ChinaNews 讨论区 】
发信人: alwaystrue (nicheng), 信区: ChinaNews
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT
发信站: BBS 未名空间站 (Tue Feb 22 03:22:38 2011, 美东)
哈哈。有些长,但值得看。
==============================================================
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大学生的女生报警,她的两名同学(一男一
女)早晨去龙口涧风景区游玩,但到现在却跟他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握... 阅读全帖
n**********1
发帖数: 1534
20
【 以下文字转载自 Stock 讨论区 】
发信人: abbabb (白菜心), 信区: Stock
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT (转载)
发信站: BBS 未名空间站 (Tue Feb 22 22:12:36 2011, 美东)
发信人: quix (uglyDuck), 信区: Joke
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT (转载)
发信站: BBS 未名空间站 (Tue Feb 22 11:00:48 2011, 美东)
发信人: alwaystrue (nicheng), 信区: ChinaNews
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT
发信站: BBS 未名空间站 (Tue Feb 22 03:22:38 2011, 美东)
哈哈。有些长,但值得看。
==============================================================
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学... 阅读全帖
J******8
发帖数: 132
21
来自主题: JobHunting版 - Facebook phone screen
The question is not hard. But I missed two key points.
The details below.
==========================================================
/*
example
char *words[] = {"foo", "bar", "baz", NULL};
setup(words);
1) First step:
isMember("foo") -> true
isMember("garply") -> false
2) Second step:
isMember("f.o") -> true
isMember("..") -> false
*/
#include
#include
#include
char *words[] = {"foo", "bar", "baz", "caz","cat",NULL};
int num=0;
void print_words(void)
{
int i=0... 阅读全帖
J********i
发帖数: 50662
22
发信人: alwaystrue (nicheng), 信区: ChinaNews
标 题: 太精彩了!北大“关机嘿咻门”事件原版 ZT
发信站: BBS 未名空间站 (Tue Feb 22 03:22:38 2011, 美东)
哈哈。有些长,但值得看。
==============================================================
原版:
某日晚,门头沟警方接到报警,北京大学一男一女两学生在灵山游玩时走失。当地警方
和北大保卫科派人连夜搜山未果。次日上午,两名学生与学校恢复联系。
原来,两人投宿旅馆后关掉手机,与其失去联系的同学误以为他们走失才报警。“夜间
的灵山已经零下几度了,我们就在上面找了一晚上。”参加搜山行动的清水派出所冯所
长介绍,前晚6时50分,他们接到一名自称北大学生的女生报警,她的两名同学(一男一
女)早晨去龙口涧风景区游玩,但到现在却跟他们失去联系,怀疑他们走失。
昨日中午,冯所长接到同样参加搜山的北大保卫科通知,说两名学生已经跟他们联系上
并汇合。
据门头沟警方掌握的情况,这两名学生游玩后当晚在旅馆投宿,随后关掉手机... 阅读全帖
g*****1
发帖数: 998
23
来自主题: JobHunting版 - 请教一道c/c++题 (转载)
【 以下文字转载自 Programming 讨论区 】
发信人: guagua1 (), 信区: Programming
标 题: 请教一道c/c++题
发信站: BBS 未名空间站 (Fri Jan 27 22:47:12 2012, 美东)
char *m()
{
char str[50];
strcpy(str,"how are you");
return str;
}
int main()
{
char s[50];
strcpy(s,m());
printf("%s",s);
//cin.get();
return 0;
}
为什么结果可以正确输出呢?我知道return by pointer可以make copy,可是return之
后storage不是free了吗?
另外,为什么下面这个就只能由一部分正确输出?
char *m()
{
char str[20];
strcpy(str,"how are you");
return str;
}
int main()
{

printf("%s",m());
//cin.get();... 阅读全帖
i**p
发帖数: 902
24
来自主题: Programming版 - Array in C
Could anybody explain why statement 3 works?
char abc[30];
1. strcpy(&(abc[0], "Hello");
2. strcpy(abc ,"Hello");
3. strcpy(&abc ,"Hello");
p***o
发帖数: 1252
25
来自主题: Programming版 - C++ STL map find does not work ???
Most likely this is the simplified code:
char pch[1000];
stock_map.clear();
strcpy(pch, "AAPL");
stock_map[pch] = something;
strcpy(pch, "GOOG");
stock_map[pch] = something_else;
strcpy(pch, "MSFT");
assert(stock_map.find(pch) == stock_map.end());
// oops, why "MSFT" is in the map?
Start a debugger and see what's happening ...
h**k
发帖数: 3368
26
来自主题: Programming版 - 一道笔试题
可能是为了用返回值继续操作
比如,copy到多个字符串可以写成
strcpy( str1, strcpy( str2, strcpy( str3, str0 ) ) );
g*****1
发帖数: 998
27
来自主题: Programming版 - 请教一道c/c++题
char *m()
{
char str[50];
strcpy(str,"how are you");
return str;
}
int main()
{
char s[50];
strcpy(s,m());
printf("%s",s);
//cin.get();
return 0;
}
为什么结果可以正确输出呢?我知道return by pointer可以make copy,可是return之
后storage不是free了吗?
另外,为什么下面这个就只能由一部分正确输出?
char *m()
{
char str[20];
strcpy(str,"how are you");
return str;
}
int main()
{

printf("%s",m());
//cin.get();
return 0;
}
然后上面char str[20];改成比如char str[50],输出就完全是乱得了
p*********t
发帖数: 2690
28
来自主题: Programming版 - 请教一道c/c++题
2网友的意见不同,哪个是对的?
newpolice -- function char *m() {} is valid
Xentar -- it's undefined.

char *m()
{
char str[50];
strcpy(str,"how are you");
return str;
}
int main()
{
char s[50];
strcpy(s,m());
printf("%s",s);
//cin.get();
return 0;
}
为什么结果可以正确输出呢?我知道return by pointer可以make copy,可是return之
后storage不是free了吗?
另外,为什么下面这个就只能由一部分正确输出?
char *m()
{
char str[20];
strcpy(str,"how are you");
return str;
}
int main()
{

printf("%s",m());
//cin.get();
return 0;
}
然后上面char str[20];改成比如cha... 阅读全帖
r*****8
发帖数: 2560
29
“You need to create a unsigned char[2] array, and then copy the data from
struct to char array,”
这两句编译通不过:
unsigned char char_array[2];
strcpy(char_array, packed_data);
还有,不能strcpy,因为真实数据中间可能有0x0字符,strcpy 到了0x0字符就
不往下走了。
要读出每一个位置来,如果是指针,这也是不好办的。
发送我有经验,不是问题。

.
K******g
发帖数: 1870
30
来自主题: JobHunting版 - akamai电面面经,攒rp
两面都是印度人,有点口音,但是execuse me之后,基本能听清楚
第一面很简单,是个印度MM,人也nice。问题都很常见
第二面是个印度GG,说话很急,有点催促的意思。
他问了我3个题目:
1. fork(), exec()调用后,操作系统里做了什么。问的比较细,我回答了COW后,还
问里面PCB里面发生了什么变化,要求很具体的答出来,我回答的有点结巴,所以后面
整个面试就定下了基调
2. 什么叫thrashing,我回答后,要求写code,假设系统有4MB memory,让OS产生
thrashing。这题我有点不知道怎么做,答的很不好。
3. 写c++里的strcpy,这题很简单。写完后,问了好几个无聊的问题:
1) 怎么优化?我说了很多,比如如果数据很大,可以用DMA之类的,他都不满意,最
后他竟然说用“memcpy”,我就觉得奇怪了,在strcpy里用memcpy算是优化吗???
2)我在return之前,给destination付个'\0',他说没有必要,要我想其他办法。我没
有想出来,我说,难道是从src里拷贝一个\0过去?他不置可否,也没有说对也没有说
错。这有什么不
K******g
发帖数: 1870
31
来自主题: JobHunting版 - akamai电面面经,攒rp
两面都是印度人,有点口音,但是execuse me之后,基本能听清楚
第一面很简单,是个印度MM,人也nice。问题都很常见
第二面是个印度GG,说话很急,有点催促的意思。
他问了我3个题目:
1. fork(), exec()调用后,操作系统里做了什么。问的比较细,我回答了COW后,还
问里面PCB里面发生了什么变化,要求很具体的答出来,我回答的有点结巴,所以后面
整个面试就定下了基调
2. 什么叫thrashing,我回答后,要求写code,假设系统有4MB memory,让OS产生
thrashing。这题我有点不知道怎么做,答的很不好。
3. 写c++里的strcpy,这题很简单。写完后,问了好几个无聊的问题:
1) 怎么优化?我说了很多,比如如果数据很大,可以用DMA之类的,他都不满意,最
后他竟然说用“memcpy”,我就觉得奇怪了,在strcpy里用memcpy算是优化吗???
2)我在return之前,给destination付个'\0',他说没有必要,要我想其他办法。我没
有想出来,我说,难道是从src里拷贝一个\0过去?他不置可否,也没有说对也没有说
错。这有什么不... 阅读全帖
j****k
发帖数: 91
32
来自主题: JobHunting版 - 请问这样写程序错了吗?
二楼应该是这个题目的正解.
但是如果稍微改一下题目, 把pString1,2的定义改为:
char *pString1, *pString2;
pString1 = (char *)malloc(3*sizeof(char));
pString2 = (char *)malloc(21*sizeof(char));
strcpy(pString1,"AAA");
strcpy(pString2,"BBBBBBBBBBBBBBBBBBBB");
这样在for循环里走过第三步的时候pString1就已经到头了, 但为什么接下来的循环都
不会出错? 虽然说c++没有边界检测, 但程序在修改pString1越界指向的内容, 这难道
不该是Access violation吗?
w**7
发帖数: 71
33
来自主题: JobHunting版 - 发个Yahoo面经,求bless
上周面了Yahoo,LEAP team,开始是HM面,问了简单的问题,感觉HM是华人,起码我的
名字他能念对,后来他给我发信说,给我找了个人面试,我一查,那人也是国人,还是
交大的,估计没准还能有点优势。
结果面试那天,电话一接是个三哥……三哥也没啥,就是交流有点问题
题目:
1. 介绍Project
2. 编程,strcpy,但是我写了程序,发现他实际要的是strcat,那就先把dst的指针移
到末尾,然后做同样strcpy的事。后来说了程序,感觉他又挑了些问题,也不知道是我
自己理解有问题还是怎么,感觉不太顺,然后就move下一题了
2. 说说编程思想,在一段有序数组中找一个目标数。直接binary search,简单吧,连
程序都没让我写,让我说思路,后来问了如果没找到要插入怎么弄, 如果是链表如何
插入。
3. Linux系统命令,杀死进程,kill -l PID。在文件夹及其所有子文件夹里的文件中
搜索一个字符,grep yourinput -R dir/*
然后就结束了
面对三哥还是有点怵,不知道咋样,Move on 求bless....
c**********e
发帖数: 2007
34
这个Strategy design pattern的例子为什么人为得弄得这么复杂?
#include
#include
#include
using namespace std;
class Strategy;
class TestBed
{
public:
enum StrategyType
{
Dummy, Left, Right, Center
};
TestBed()
{
strategy_ = NULL;
}
void setStrategy(int type, int width);
void doIt();
private:
Strategy *strategy_;
};
class Strategy
{
public:
Strategy(int width): width_(width){}
void format()
{
char line[80], wo... 阅读全帖
s********k
发帖数: 6180
35
你这个是把简单问题复杂化,这个函数就是个简单面试问题,又没有给你提供背景说复
杂的系统函数,里面出现的各种问题NULL返回值足够了。
去看看kernel里面比如strcpy的实现,这个函数复杂度和strcpy差不多。返回值用char
*没有问题。
至于你说的那种caller传buffer,理论上是不错,实际系统中大多数不会这么搞得复杂
,如果大系统的码农连函数里面做点malloc和free都搞不定,signature再好项目肯定
完蛋
l***p
发帖数: 358
36
来自主题: JobHunting版 - linkedin,rocketfuel, google面经若干
中间有0的情况,比如
10042319
#include
int main(int argc, char * argv[])
{
int num = atoi(argv[1]);
char s[] = "45002319";
printf("source: %s and num:%d", s, num);
size_t size;
while (num > 0 && (s && (size = strlen(s)) > 0))
{
if (size > 1)
{
if (s[0] > s[1])
{// 4[<4, 0]
size_t cz = 1;
char * n = s + 1;
... 阅读全帖

发帖数: 1
37
来自主题: JobHunting版 - 放c code求老师傅指教
update:
谢谢板上各位老师傅,现在我知道是我的问题了,“without using a second string
”我没有理解好,感谢大家赐教,我继续努力!
刚刚解决身份问题,男,找工作和leetcode都有一段时间了,最近碰到这家公司的一个
面试
http://stackoverflow.com/jobs/115265/software-engineer-networking-schweitzer-engineering?searchTerm=SEL&offset=3&sort=s
问的问题和glassdoor一样,所以我也准备了一下那个unions的答案和例子,以前没用
这个:
Interview Questions
1) What is in the software requirements?
2) What is mutex and semaphore?
3) When to use unions?
4) What are the pros and cons of using assembly in embedded systems?
5) Programming t... 阅读全帖
c******3
发帖数: 6509
38
来自主题: JobHunting版 - 放c code求老师傅指教
看了半天题目,没看见不让用strlen啊,你还用strdup去分配内存来计算count
“without using a second string for temporary storage. ”,你以为char buf[
count]就不算string了?
最后的拷贝最狠,清空整个src[],然后做strcpy,难道不知道strcpy带结尾0赋值能力
?完全是多余的运算
本来一个简单strstr+memmove搞定的小程序,你自己看看用了多少字符串操作,而且中
间src重来不移动,每次循环都是从头扫描到尾部,不挂就没天理了...
D*****r
发帖数: 6791
39
来自主题: Joke版 - Evolution of a programmer
http://www.ariel.com.au/jokes/The_Evolution_of_a_Programmer.html
High School/Jr.High
10 PRINT "HELLO WORLD"
20 END
First year in College
program Hello(input, output)
begin
writeln('Hello World')
end.
Senior year in College
(defun hello
(print
(cons 'Hello (list 'World))))
New professional
#include
void main(void)
{
char *message[] = {"Hello ", "World"};
int i;
for(i = 0; i < 2; ++i)
printf("%s", message[i]);
printf("\n");
}
... 阅读全帖
b****e
发帖数: 1
40
来自主题: Database版 - 如何进行Oracle8i的Embedded SQL?
各位大侠,
我现在想用embedded SQL对一个Oracle 8i 的表进行update,
我在C文件中嵌入如下语句:
#include
#define MAX 18
exec sql begin declare section;
char user_name[30], user_pwd[10];
char etitle[10];
int esalary;
exec sql end declare section;
int main()
{
int i;
strcpy(user_name, "*****");
strcpy(user_pwd, "***");
exec sql connect :user_name identified by :user_pwd;
exec sqp declare emp cursor for
select title, salary from employee, works
where employee.eid = works.eid;
exec sql open emp;
for (i=0; i
c*****t
发帖数: 1879
41
来自主题: Database版 - Mysterious PgSQL 8.3 crash
写 stored procedure 的时候,发现 sprintf, elog, ereport 等统统
会造成 crash 。可是 8.2.6 底下好好的。比如
strcpy (buffer, "test"); 执行没问题,但是
sprintf (buffer, "%s", "test"); 就 crash。
例如:
CREATE FUNCTION TCDB.t_create_table(cstring) RETURNS void
AS '/projects/workspace/tcdb/src/server/libmy_utils.dll', 't_create_table'
LANGUAGE C STRICT;
Datum t_create_table (PG_FUNCTION_ARGS)
{
char buffer[8192];
sprintf (buffer, "%s", "test"); // 这一行 crash
// strcpy (buffer, "test"); 没问题
puts (buffer
q***z
发帖数: 934
42
来自主题: Programming版 - Another question
Here is my program
the head is
typedef struct struct_CN
{
unsigned char magicA;
unsigned char magicB;
unsigned short msgLen;
} CN;
typedef struct struct_CcDev
{
CN Header;
unsigned short action;
} CcDev;
CcDev CcDev_packet;
Evaluate_CN(CN *CN_p)
{
strcpy(&CN_p->magicA,"A");
printf("magicA is %s\n", &CN_p->magicA);
strcpy(&CN_p->magicB,"H");
printf("magicB is %s\n", &CN_p->magicB);
CN_p->msgLen = 1234;
printf("msgLen is %d\n", &CN_p->msgLen);
}
void
s*****n
发帖数: 1279
43
来自主题: Programming版 - 一个极简单的程序求教
以前用C++都是在interpreter的环境下,现在想编译,发现好多都不懂。大家帮我看看下
面这个程序:
#include
#include
#include
#include
#include
int main (int argc, char **argv)
{
int iarg = 1;
char root_file_name[256];
strcpy (single_file_name,argv[1]);
strcpy (root_file_name, argv[2]);

ofstream decayresults(root_file_name);
decayresults.close();
cout<<"That's all"<
}//end of main
然后我用下面的Makefile编译总是通不过,说是ofstream,cout, endl 都没有定义。难
道不是只要include ,
e******d
发帖数: 14
44
来自主题: Programming版 - weird output
void func(void)
{
char *str = (char *) malloc(100);
strcpy(str, “"hello");
free(str);
if(str != NULL)
{
strcpy(str, “"world");
printf("%s\n", str);
}
}
The output is "world" on linux. The freed memory still can be accessed?
t******c
发帖数: 348
45
来自主题: Programming版 - 问个简单的memory allocation 的问题。
simple implementation of strcpy is like this:
char *strcpy(char *dest, const char *src)
{
const char *p;
char *q;
for(p = src, q = dest; *p != '\0'; p++, q++)
*q = *p;
*q = '\0';
return dest;
}
k****f
发帖数: 3794
46
FILE*fp=fopen("youdata","r");
char buf[1000];
int first,second;
char third[10],fourth[10];
double fifth;
while(fgets(buf,sizeof(buf),fp)){
char*p=strtok(buf,"|");
if(p==NULL)break;
first=atoi(p);
p=strtok(NULL,"|");
second=atoi(p);
p=strtok(NULL,"|");
strcpy(third,p);
p=strtok(NULL,"|");
strcpy(fourth,p);
p=strtok(NULL,"|");
fifth=atof(p);
}
fclose(fp);

how
.
me
c*******9
发帖数: 6411
47
来自主题: Programming版 - a c++ question.
Thank you Xentar...
is the following OK and safe, is strcpy potentially wiping out existing data
(the memory after a)?
char* a:
strcpy( a, anotherstring.c_str());
f( &a );
all I want to do here is to pass a char** that point to a copy of value
anotherstring.c_str()...
what is the best way to do it?
Thanks again.
X****r
发帖数: 3557
48
来自主题: Programming版 - a c++ question.
No, that's wrong, either, because you didn't allocate memory
for a.
What you want to do could be the following:
char a[10], *b = a;
strcpy(a, anotherstring.c_str());
f(&b);
I didn't reply with the solution immediately because I wanted you
to understand the issue.
Another unrelated reminder is that strcpy is inherently dangerous.
Unless you're 100% sure the length of anotherstring is no greater
than 9, your code is not safe. Use strncpy instead.

existing data
value
w******a
发帖数: 27
49
来自主题: Programming版 - 一道笔试题
比如strcpy的原型如下:
char *strcpy(char *dest,char *src);
这里可以用*dest返回值,也可以用函数的返回值把真正的返回值给return出来.
问题是:为什么用dest返回了,这里还用return返回.
1 2 3 4 下页 末页 (共4页)