- cstring[meta header]
- std[meta namespace]
- function[meta id-type]
namespace std {
int strncmp(const char* s1, const char* s2, size_t n);
}- size_t[link /reference/cstddef/size_t.md]
文字列を、上限サイズを指定して比較する。
s1が指す配列とs2が指す配列を、先頭から最大n文字まで比較する。いずれかの文字列で終端ヌル文字に達した場合、そこで比較を終える。各文字はunsigned charとして比較される。
比較した範囲で最初に異なる文字について、s1側の文字がs2側の文字より大きい場合は正の整数、小さい場合は負の整数を返す。比較した範囲が等しい場合は0を返す。
- この関数は、フリースタンディング処理系でも使用できる。
#include <cstring>
#include <iostream>
int main()
{
std::cout << std::boolalpha;
// 先頭3文字だけを比較する
std::cout << (std::strncmp("abcXXX", "abcYYY", 3) == 0) << std::endl;
}- std::strncmp[color ff0000]
true
- C++98
- P2338R4 Freestanding Library: Character primitives and the C library
- C++26で、この関数がフリースタンディング処理系で使用可能になった