亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
樓主: gaochang2008
打印 上一主題 下一主題

[算法] 不簡單的strlen長度計算, [復(fù)制鏈接]

論壇徽章:
1
射手座
日期:2013-08-21 13:11:46
51 [報告]
發(fā)表于 2009-05-13 18:58 |只看該作者
牛人什么時候都有,今年特別多

論壇徽章:
0
52 [報告]
發(fā)表于 2009-05-13 19:42 |只看該作者
又是考遞歸

論壇徽章:
4
2015年辭舊歲徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:09IT運維版塊每日發(fā)帖之星
日期:2015-09-14 06:20:0015-16賽季CBA聯(lián)賽之深圳
日期:2016-01-16 16:34:21
53 [報告]
發(fā)表于 2009-05-13 19:59 |只看該作者
原帖由 daybreakcx 于 2009-5-13 18:44 發(fā)表
為了避免輸出其他信息,在41樓基礎(chǔ)上改成這樣
int Strlen(char* p)
{
        return (sprintf(p,p));
}
當然,對于常量字符串就不行了,會出錯的


#include <stdio.h>

int mystrlen(char *p);

int main() {
        char *p = "abcdefg";
        printf("length is: %d\n", mystrlen(p));

        return 0;
}

int mystrlen(char *p) {
        return (sprintf(p,p));
}

在tc2.0下,結(jié)果:
length is: 0

在C-Free下:運行時出現(xiàn)
“應(yīng)用程序錯誤”對話框。

論壇徽章:
0
54 [報告]
發(fā)表于 2009-05-13 20:18 |只看該作者

  1. #include <stdio.h>
  2. #include <string.h>

  3. int main (void)
  4. {
  5.   char *msg = "hello world";
  6.   if (strcspn (msg, "") == strlen (msg))
  7.     printf ("done\n");
  8. }
復(fù)制代碼

論壇徽章:
0
55 [報告]
發(fā)表于 2009-05-13 21:05 |只看該作者
在SICP中這種思想用到很多,慢慢體會吧

論壇徽章:
0
56 [報告]
發(fā)表于 2009-05-13 21:18 |只看該作者
學習了

論壇徽章:
0
57 [報告]
發(fā)表于 2009-05-13 23:58 |只看該作者
原帖由 langue 于 2009-5-13 09:32 發(fā)表
其實題目有個小問題。strlen() 返回的是 size_t。


size_t  的實際 類型是不是 unsigned int?

論壇徽章:
0
58 [報告]
發(fā)表于 2009-05-14 00:11 |只看該作者
原帖由 lxjlan 于 2009-5-13 23:58 發(fā)表


size_t  的實際 類型是不是 unsigned int?


不一定是 有時它是unsigned __int64

論壇徽章:
0
59 [報告]
發(fā)表于 2009-05-14 00:19 |只看該作者
原帖由 gaochang2008 于 2009-5-12 22:35 發(fā)表
去一個公司面試,面試讓我寫一個 strlen的實現(xiàn)
int strlen(char *p)  // 注意! 不允許定義任何變量
{}

我當時的答復(fù)是: 無解得題目,,

你們誰有辦法實現(xiàn)??

這樣行不?
int strlen(char *p)
{
    return (sizeof(p)/sizeof(char) - 1);
}

論壇徽章:
0
60 [報告]
發(fā)表于 2009-05-14 09:21 |只看該作者
原帖由 xinglp 于 2009-5-13 17:52 發(fā)表
static inline uint32_t _StrLen(char* p)
{
        if('\0'==p[0])return 0;
        if('\0'==p[1])return 1;
        if('\0'==p[2])return 2;
        if('\0'==p[3])return 3;

        for(*(uin ...




使用范圍太狹窄了

_Strlen("aabbccdd"); // error
p = "aabbccdd";
_Strlen(p); // error
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP