在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/C/ 在不添加<string.h>的情況下,為什么自己寫的strlen()

在不添加<string.h>的情況下,為什么自己寫的strlen()函數(shù)會(huì)有警告?

相關(guān)代碼

// 請(qǐng)把代碼文本粘貼到下方(請(qǐng)勿用圖片代替代碼)
#include <stdio.h>
#define N 100
int strlen( char string[])
{
    int i=0;
    while(string[i]!='\0') i++;
    return i;
}
int main()
{
    char string[N];
    scanf("%s",string);
    int r=strlen(string);
    printf("%d\n",r);
    return 0;
}

你期待的結(jié)果是什么?實(shí)際看到的錯(cuò)誤信息又是什么?

比如這個(gè)程序,并沒有添加頭文件<string.h>,在編譯時(shí)確會(huì)彈出警告:[Warning] conflicting types for built-in function 'strlen'
但是把函數(shù)名strlen改成mystrlen什么的就沒警告了,請(qǐng)問這是為什么?

回答
編輯回答
愛礙唉

clipboard.png

GCC表示沒有這個(gè)問題

猜測(cè)是你IDE的問題,不知道你什么IDE,估計(jì)是啟用了默認(rèn)庫文件的選項(xiàng)

題目的代碼格式難以入目

2017年10月29日 01:03