當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ strlen()用法及代碼示例


在本教程中,我們將借助示例了解 C++ strlen() 函數。

C++ 中的strlen() 函數返回給定C-string 的長度。它在cstring 頭文件中定義。

示例

#include <iostream>
#include <cstring>
using namespace std;

int main() {

  // initialize C-string
  char song[] = "We Will Rock You!";

  // print the length of the song string
  cout << strlen(song);

  return 0;
}

// Output: 17

strlen() 語法

用法:

strlen(const char* str);

在這裏,str 是我們需要找出其長度的字符串,它被轉換為 const char*

參數:

strlen() 函數采用以下參數:

  • str- 指向要計算其長度的C-string(以空結尾的字符串)的指針

返回:

strlen() 函數返回:

  • C-string (size_t) 的長度

strlen() 原型

cstring 頭文件中定義的strlen() 原型為:

size_t strlen(const char* str);

注意:返回的長度不包含空字符'\0'.

strlen() 未定義行為

的行為strlen()不明確的如果:

  • 字符串中沒有空字符'\0',即如果它不是C-string

示例:C++ strlen()

#include <cstring>
#include <iostream>
using namespace std;

int main() {
  char str1[] = "This a string";
  char str2[] = "This is another string";

  // find lengths of str1 and str2
  // size_t return value converted to int    
  int len1 = strlen(str1);
  int len2 = strlen(str2);

  cout << "Length of str1 = " << len1 << endl;
  cout << "Length of str2 = " << len2 << endl;

  if (len1 > len2)
    cout << "str1 is longer than str2";
  else if (len1 < len2)
    cout << "str2 is longer than str1";
  else
    cout << "str1 and str2 are of equal length";

  return 0;
}

輸出

Length of str1 = 13
Length of str2 = 22
str2 is longer than str1

相關用法


注:本文由純淨天空篩選整理自 C++ strlen()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。