( C/C++ の場合) #include <string.h> size_t strlen(const char *str) str : NULL 文字( '\0' )で終了する文字列 ( Java の場合: String クラスのメソッド length を利用) int length();
#include <stdio.h>
#include <string.h>
int main()
{
char str[81];
strncpy(str, "This is a test", 6); // 文字列のコピー
// str = "This is a test"; はできない.ただし,(文字列の長さ+1)と
// 配列の大きさが一致していればできる(char str[15])
str[6] = '\0';
printf("文字列は %s ,長さは %d\n", str, strlen(str)); // strlen()は文字列の長さ
strncat(str, "s a test", 3); // 文字列の連結
printf("文字列は %s ,長さは %d\n", str, strlen(str));
strcat(str, " test");
printf("文字列は %s ,長さは %d\n", str, strlen(str));
strcpy(str, "End of test");
printf("文字列は %s ,長さは %d\n", str, strlen(str));
return 0;
}
(出力)
文字列は This i ,長さは 6
文字列は This is a ,長さは 9
文字列は This is a test ,長さは 14
文字列は End of test ,長さは 11
import java.io.*;
public class Test {
public static void main(String args[])
{
String str1 = new String ("This is a test");
String str2;
str2 = str1.substring(0, 6); // 文字列のコピー(部分文字列を取り出す)
System.out.println("文字列は " + str2 + " ,長さは " + str2.length()); // length()は文字列の長さ
str2 = str2 + "s a"; // 文字列の連結
System.out.println("文字列は " + str2 + " ,長さは " + str2.length());
str2 = str2 + " test";
System.out.println("文字列は " + str2 + " ,長さは " + str2.length());
str2 = "End of test"; // str2 = new String("End of test"); も可能(多少意味は異なる)
System.out.println("文字列は " + str2 + " ,長さは " + str2.length()); // length()は文字列の長さ
}
}
(出力)
文字列は This i ,長さは 6
文字列は This is a ,長さは 9
文字列は This is a test ,長さは 14
文字列は End of test ,長さは 11
| ホームページ | 目次 | 演習解答例目次 | 付録目次 | 索引 |