Ⅰ c語言中 strlen函數用法的問題
printf("%*d%*d\n",strlen(firstname),strlen(firstname),strlen(sumame),
strlen(sumame));
這個是輸出匹配的問題。
舉個例子
printf("%5d",5);
就會給你5個空間輸出5,前面4個空格,然後輸出5.
printf("%*d",5,5);和上面一樣,利用*匹配5控制輸出寬度。就是四個空格5.
同理上面的第一個strlen是作為輸出寬度而存在的,也就是說給你字元串長度個空間,用於存放字元串長度的變數。
比如輸入
we
women
就相當於
printf("%*d%*d",2,2,5,5);
相當於
printf("%2d%5d",2,5);輸出
【1個空格】2【4個空格】5
Ⅱ c語言中,在自己定義的函數中可以使用strlen函數嗎
可以,不過要包含string.h #include "string.h"
#include "stdio.h"
#include "string.h"
void func()
{
char p[]="abc";
printf("%d",strlen(p));
}
void main{
func();
}
Ⅲ c語言中strlen()怎麼用
函數聲明:extern unsigned int strlen(char *s);
所屬函數庫:<string.h>
功能:返回s所指的字元串的長度,其中字元串必須以』\0』結尾
參數:s為字元串的初始地址
使用舉例:
代碼如下
編譯運行結果
說明:
函數strlen比較容易理解,其功能和sizeof很容易混淆。其中sizeof指的是字元串聲明後佔用的內存長度,它就是一個操作符,不是函數;而strlen則是一個函數,它從第一個位元組開始往後數,直到遇見了』\0』,則停止
第一 string頭文件中的函數strlen 只可以用來測試字元型數組的長度,其他類型不可以
第二 如果要測試int 修改原函數中的參數,會導致數組長度變長(計算機會一直找下去,直到遇到\0)
第三 如果是字元數組,當裡面的字元數少於數組長度時,可以正常輸出用strlen,如果等於數組長度,則會出現問題
函數介紹:
(推薦教程:c語言教程)
strlen()函數用於計算字元串的長度,直到空結束字元,但不包括空結束字元。
語法結構:
size_t strlen(const char *str)
參數說明:
str -- 要計算長度的字元串。
返回值:
該函數返回字元串的長度
Ⅳ c語言strlen函數問題
strlen實際上是,從參數表示的地址往後找,找到第一個'