文字列の長さを調べる
明解C言語 入門編 > 11. 文字列とポインタ >
文字列の長さを調べる
C
#include <stdio.h>
#include <string.h>unsigned str_length(const char* str)
{
size_t len = 0;while (*str++)
len++;return len;
}int main(int argc, char* argv[])
{
char str[100] = "ABC";printf("sizeof(\"%s\") = %u\n", str, (unsigned)sizeof(str));
printf("strlen(\"%s\") = %u\n", str, strlen(str));
printf("str_length(\"%s\") = %u\n", str, str_length(str));return 0;
}
実行結果
R:\>lesson084\project1.exe
sizeof("ABC") = 100
strlen("ABC") = 3
str_length("ABC") = 3
Delphi
program Project1;{$APPTYPE CONSOLE}
uses
SysUtils;function str_length(str:PChar):Integer;
begin
result := 0;
while (str^ <> #0) do
begin
Inc(str);
Inc(result);
end;
end;procedure main();
const
str: String = 'ABC';
ptr: array[0..255] of Char = '12345';
begin
Writeln(Format('length(''%s'') = %d', [str, Length(str)]));
Writeln(Format('sizeof(''%s'') = %d', [ptr, SizeOf(ptr)]));
Writeln(Format('strlen(''%s'') = %d', [ptr, StrLen(ptr)]));
Writeln(Format('str_length(''%s'') = %d', [ptr, str_length(ptr)]));
end;begin
main;
end.
実行結果
S:\>lesson084\project1.exe
length('ABC') = 3
sizeof('12345') = 256
strlen('12345') = 5
str_length('12345') = 5