String Byte Length: Difference between revisions

From Rosetta Code
Content added Content deleted
mNo edit summary
Line 1: Line 1:
{{Template:split-review}}
[http://liubash.ifrance.com/new/tru-tones.htm tru tones] [http://chrystiala.ifrance.com/library/nuova-volvo.htm nuova volvo gpl auto nuove] [http://beatpoetsa.ifrance.com/description/fah-talai.htm fah talai jone] [http://liubash.ifrance.com/new/incontri-adulti.htm incontri adulti] [http://eccoblackfin.ifrance.com/html/hyry-antti.htm hyry antti] [http://listsobacka.ifrance.com/small/quien-quiere.htm quien quiere guerra] [http://pouringsunny.ifrance.com/description/upmini-soli/ upmini soli] [http://beatpoetsa.ifrance.com/description/ocean-cf.htm ocean cf 3411] [http://liubash.ifrance.com/new/mp-cdar.htm mp3 cda9847r] [http://liubash.ifrance.com/new/pub.htm pub] [http://infunt.ifrance.com/articles/keys-kiosque/ keys kiosque] [http://infunt.ifrance.com/articles/vendere-diamante/ vendere diamante on line] [http://infunt.ifrance.com/articles/officine-point/ officine point service] [http://eccoblackfin.ifrance.com/html/dire-stars.htm dire stars] [http://animaetrix00.ifrance.com/content/lotus-organizer/ lotus organizer freeware] [http://seachildelf.ifrance.com/resources/serbian/ serbian] [http://makkiesan.ifrance.com/crociera-lavoro.htm crociera lavoro] [http://pouringsunny.ifrance.com/description/scuola-di/ scuola di canto] [http://seachildelf.ifrance.com/resources/cintura-cane/ cintura cane] [http://listsobacka.ifrance.com/small/need-for.htm need for speed 5] [http://jojorock.ifrance.com/articles/catenina-oro/ catenina oro bianco] [http://ohmygoshalix.ifrance.com/blog/bedhi-com.htm bedhi com] [http://jojorock.ifrance.com/articles/fool/ fool] [http://emrinalexander.ifrance.com/styles/auto-noleggio.htm auto noleggio venezia] [http://listsobacka.ifrance.com/small/video-registratore.htm video registratore in dvd] [http://jojorock.ifrance.com/articles/cover-biancaneve/ cover biancaneve] [http://chrystiala.ifrance.com/library/harakah.htm harakah] [http://thecakeblog.ifrance.com/articles/www-peroni/ www peroni it] [http://jojorock.ifrance.com/articles/volo-bassano/ volo bassano grappa] [http://jojorock.ifrance.com/articles/www-prait/ www prait] [http://feelosof.ifrance.com/description/serie-s/ serie s mercedes] [http://infunt.ifrance.com/articles/teen-anal/ teen anal] [http://lethalga.ifrance.com/topic/il-gatto/ il gatto e il topo] [http://infunt.ifrance.com/articles/ostaggio-ucciso/ ostaggio ucciso con pistola] [http://beatpoetsa.ifrance.com/description/porsche-.htm porsche 911 carrera 4 cabrio] [http://belikan.ifrance.com/library/mtv-video.htm mtv video music awards rock] [http://beatpoetsa.ifrance.com/description/locali-notturni.htm locali notturni praga] [http://jazzyjoe.ifrance.com/palmare-con/ palmare con gps e kit auto] [http://animaetrix00.ifrance.com/content/commissario-pepe/ commissario pepe] [http://cikumuffin.ifrance.com/topic/lettore-sony/ lettore sony vaio] [http://animaetrix00.ifrance.com/content/canta-tu/ canta tu basi musicali] [http://seachildelf.ifrance.com/resources/mustek-gsmart/ mustek gsmart d30] [http://cikumuffin.ifrance.com/topic/mari-mantien/ mari mantien mane] [http://makkiesan.ifrance.com/film-warner.htm film warner willage] [http://jene7777777.ifrance.com/new/scarpe-da.htm scarpe da neonato] [http://pouringsunny.ifrance.com/description/batteria-panasonic/ batteria panasonic cga s002e] [http://ohmygoshalix.ifrance.com/blog/cartine-italiane.htm cartine italiane] [http://beatpoetsa.ifrance.com/description/sandstorm.htm sandstorm] [http://infunt.ifrance.com/articles/gary-moore/ gary moore merry go round] [http://eccoblackfin.ifrance.com/html/pny-verto.htm pny verto 6600gt 128mb pci] [http://belikan.ifrance.com/library/una-fiera.htm una fiera inquieta] [http://jojorock.ifrance.com/articles/ban-bang/ ban bang] [http://shotlandetz.ifrance.com/blog/risme-a/ risme a4] [http://lethalga.ifrance.com/topic/katie-fey/ katie fey photo] [http://shotlandetz.ifrance.com/blog/ponte-stretto/ ponte stretto] [http://seachildelf.ifrance.com/resources/polo-usato/ polo usato] [http://eccoblackfin.ifrance.com/html/audi-a.htm audi a3 2004] [http://beatpoetsa.ifrance.com/description/bmw-.htm bmw 645 ci] [http://infunt.ifrance.com/articles/midi-abre/ midi abre tu mente] [http://jazzyjoe.ifrance.com/ferrovia-nord/ ferrovia nord milano] [http://listsobacka.ifrance.com/small/www-laura.htm www laura pausini it] [http://belikan.ifrance.com/library/batterie-per.htm batterie per samsung z105] [http://chrystiala.ifrance.com/library/serie-b.htm serie b 2004] [http://jazzyjoe.ifrance.com/send-in/ send in the vaseline] [http://feelosof.ifrance.com/description/gioiello-kiara/ gioiello kiara] [http://beatpoetsa.ifrance.com/description/ministero-it.htm ministero it] [http://seachildelf.ifrance.com/resources/carola-end/ carola end tommy] [http://ohmygoshalix.ifrance.com/blog/media-center.htm media center edition 2005] [http://feelosof.ifrance.com/description/carolyne-ferreira/ carolyne ferreira] [http://chrystiala.ifrance.com/library/www-tx.htm www tx tnet it] [http://jazzyjoe.ifrance.com/poliziamunicipale-catania/ poliziamunicipale catania] [http://jazzyjoe.ifrance.com/video-if/ video if you believe] [http://belikan.ifrance.com/library/dual-xeon.htm dual xeon scheda madre] [http://pouringsunny.ifrance.com/description/lealy-nahary/ lealy nahary] [http://jene7777777.ifrance.com/new/brionvega-televisori.htm brionvega televisori] [http://shmarodral.ifrance.com/text/www-video.htm www video gratis it] [http://ohmygoshalix.ifrance.com/blog/telefonini-samsung.htm telefonini samsung x460] [http://pouringsunny.ifrance.com/description/fideiussione/ fideiussione] [http://feelosof.ifrance.com/description/multitap-per/ multitap per playstation 2] [http://seachildelf.ifrance.com/resources/braccato/ braccato] [http://liubash.ifrance.com/new/estensioni-firefox.htm estensioni firefox] [http://beatpoetsa.ifrance.com/description/la-piccola.htm la piccola emigrante] [http://makkiesan.ifrance.com/calendario-de.htm calendario de niurka y bobby larios] [http://feelosof.ifrance.com/description/eamon-foto/ eamon foto] [http://shmarodral.ifrance.com/text/flash-advance.htm flash advance] [http://listsobacka.ifrance.com/small/yeti-games.htm yeti games] [http://beatpoetsa.ifrance.com/description/la-lega.htm la lega calcio in winning eleven 8] [http://emrinalexander.ifrance.com/styles/la-demo.htm la demo di wheel of time] [http://belikan.ifrance.com/library/hit-mania.htm hit mania dance compilation] [http://pouringsunny.ifrance.com/description/saturday-underdog/ saturday underdog project] [http://belikan.ifrance.com/library/cronometro-oregon.htm cronometro oregon scientific] [http://lethalga.ifrance.com/topic/test-dieta/ test dieta] [http://thecakeblog.ifrance.com/articles/la-ragazza/ la ragazza valentina] [http://chrystiala.ifrance.com/library/dissipatore.htm dissipatore 478] [http://infunt.ifrance.com/articles/fotos-de/ fotos de paisages] [http://makkiesan.ifrance.com/dany-trans.htm dany trans] [http://jene7777777.ifrance.com/new/dragpn-ball.htm dragpn ball gt] [http://beatpoetsa.ifrance.com/description/winbrick.htm winbrick] [http://chrystiala.ifrance.com/library/cenone-ultimo.htm cenone ultimo] [http://listsobacka.ifrance.com/small/lettera-d.htm lettera d amore messaggio] [http://emrinalexander.ifrance.com/styles/gisela-dulko.htm gisela dulko] [http://chrystiala.ifrance.com/library/tenor-.htm tenor black] [http://liubash.ifrance.com/new/toshiba-satellite.htm toshiba satellite p4] [http://jene7777777.ifrance.com/new/dialettale.htm dialettale] [http://shmarodral.ifrance.com/text/cartier-must.htm cartier must] [http://cikumuffin.ifrance.com/topic/biografia-anna/ biografia anna maria franzoni] [http://jene7777777.ifrance.com/new/marevivo.htm marevivo] [http://firejedi.ifrance.com/new/lo-sbadiglio/ lo sbadiglio] [http://lethalga.ifrance.com/topic/mamma-insegname/ mamma insegname a ballar] [http://listsobacka.ifrance.com/small/allenamento-palestra.htm allenamento palestra] [http://seachildelf.ifrance.com/resources/porky-s/ porky s] [http://eccoblackfin.ifrance.com/html/ultimo-valzer.htm ultimo valzer] [http://cikumuffin.ifrance.com/topic/supplier-development/ supplier development engineer (regione emilia romagna bologna provincia)] [http://animaetrix00.ifrance.com/content/il-pesce/ il pesce magico] [http://eccoblackfin.ifrance.com/html/controllo-accesso.htm controllo accesso] [http://shmarodral.ifrance.com/text/plasma-px.htm plasma 42px11] [http://firejedi.ifrance.com/new/pasella/ pasella] [http://thecakeblog.ifrance.com/articles/isuzu-dmax/ isuzu dmax] [http://pouringsunny.ifrance.com/description/un-mandarino/ un mandarino per teo] [http://shotlandetz.ifrance.com/blog/ricevitore-digitale/ ricevitore digitale terrestre nokia] [http://pouringsunny.ifrance.com/description/theblackeyedpeas/ theblackeyedpeas] [http://listsobacka.ifrance.com/small/ingegneri-palermo.htm ingegneri palermo lavoro] [http://jazzyjoe.ifrance.com/batteria-presario/ batteria presario] [http://cikumuffin.ifrance.com/topic/dysney/ dysney] [http://jojorock.ifrance.com/articles/esorcista-link/ esorcista link] [http://firejedi.ifrance.com/new/mg/ mg10 2] [http://thecakeblog.ifrance.com/articles/compaq-evo/ compaq evo] [http://jojorock.ifrance.com/articles/chat-foto/ chat foto] [http://shmarodral.ifrance.com/text/gugu.htm gugu] [http://chrystiala.ifrance.com/library/hex-key.htm hex key sat] [http://animaetrix00.ifrance.com/content/gioielli-and/ gioielli and ambra and milano] [http://thecakeblog.ifrance.com/articles/kids-wb/ kids wb] [http://shotlandetz.ifrance.com/blog/holophone/ holophone] [http://belikan.ifrance.com/library/lg-cd.htm lg cd rom] [http://animaetrix00.ifrance.com/content/el-grafico/ el grafico it] [http://jazzyjoe.ifrance.com/culture-club/ culture club] [http://infunt.ifrance.com/articles/michel-vihet/ michel vihet] [http://emrinalexander.ifrance.com/styles/terrorist.htm terrorist] [http://jojorock.ifrance.com/articles/caroline-hard/ caroline hard] [http://listsobacka.ifrance.com/small/get-away.htm get away] [http://firejedi.ifrance.com/new/wenn-der/ wenn der hafer sticht] [http://feelosof.ifrance.com/description/ristorante-selene/ ristorante selene] [http://infunt.ifrance.com/articles/home-theatre/ home theatre senza fili dvd divx] [http://shotlandetz.ifrance.com/blog/lanparty-ut/ lanparty ut nf4 slid] [http://chrystiala.ifrance.com/library/decapitacion-del.htm decapitacion del americano] [http://pouringsunny.ifrance.com/description/intel-/ intel 64 bit] [http://ohmygoshalix.ifrance.com/blog/gav-pesca.htm gav pesca] [http://feelosof.ifrance.com/description/ufficio-vercelli/ ufficio vercelli] [http://seachildelf.ifrance.com/resources/ps/ ps2] [http://infunt.ifrance.com/articles/melissa-p/ melissa p] [http://cikumuffin.ifrance.com/topic/locali-scambisti/ locali scambisti in lombardia] [http://shotlandetz.ifrance.com/blog/un-campione/ un campione per tommy joe] [http://listsobacka.ifrance.com/small/fanfara-esercito.htm fanfara esercito] [http://shotlandetz.ifrance.com/blog/donne-tg/ donne tg] [http://shmarodral.ifrance.com/text/crapa-pelada.htm crapa pelada] [http://jojorock.ifrance.com/articles/moka-elettrica/ moka elettrica] [http://listsobacka.ifrance.com/small/storage-disk.htm storage disk] [http://pouringsunny.ifrance.com/description/celebrita-sxy/ celebrita sxy] [http://shotlandetz.ifrance.com/blog/capodanno-esibizionista/ capodanno esibizionista] [http://animaetrix00.ifrance.com/content/lcd-/ lcd 32 hd philips] [http://shmarodral.ifrance.com/text/volvo-finanziamenti.htm volvo finanziamenti] [http://lethalga.ifrance.com/topic/masterizzatore-dvdrw/ masterizzatore dvdrw dl] [http://pouringsunny.ifrance.com/description/kalat/ kalat] [http://feelosof.ifrance.com/description/vendita-dvd/ vendita dvd imperia] [http://pouringsunny.ifrance.com/description/nick-berg/ nick berg s] [http://listsobacka.ifrance.com/small/video-atias.htm video atias] [http://lethalga.ifrance.com/topic/detrazione-ici/ detrazione ici] [http://jene7777777.ifrance.com/new/frigoriferi-da.htm frigoriferi da 140 litri] [http://eccoblackfin.ifrance.com/html/linksys-wgag.htm linksys wga54g] [http://jazzyjoe.ifrance.com/www-il/ www il sogno com] [http://jojorock.ifrance.com/articles/polizia-dello/ polizia dello stato] [http://thecakeblog.ifrance.com/articles/div-codec/ div3 codec] [http://chrystiala.ifrance.com/library/ballando-al.htm ballando al buoi] [http://jojorock.ifrance.com/articles/capitello/ capitello] [http://jene7777777.ifrance.com/new/konica-minolta.htm konica minolta 2300w] [http://cikumuffin.ifrance.com/topic/toner-xerox/ toner xerox 3400] [http://belikan.ifrance.com/library/karaoke-nannini.htm karaoke nannini i maschi] [http://chrystiala.ifrance.com/library/a-canon.htm a510 canon] [http://thecakeblog.ifrance.com/articles/corazziere/ corazziere] [http://jene7777777.ifrance.com/new/organzino.htm organzino] [http://listsobacka.ifrance.com/small/un-amore.htm un amore di plastica] [http://jene7777777.ifrance.com/new/bluetooth-cuffie.htm bluetooth cuffie auricolari] [http://listsobacka.ifrance.com/small/polvere-alla.htm polvere alla hamilton libri] [http://shotlandetz.ifrance.com/blog/maceio/ maceio] [http://makkiesan.ifrance.com/www-pensioni.htm www pensioni imps it] [http://jojorock.ifrance.com/articles/no-frost/ no frost silver] [http://eccoblackfin.ifrance.com/html/portatile-amd.htm portatile amd turion] [http://firejedi.ifrance.com/new/eugenie-grandet/ eugenie grandet] [http://shmarodral.ifrance.com/text/www-deejay.htm www deejay] [http://shmarodral.ifrance.com/text/whirlpool-premium.htm whirlpool premium] [http://seachildelf.ifrance.com/resources/pavimenti-in/ pavimenti in legno] [http://ohmygoshalix.ifrance.com/blog/prestito-todi.htm prestito todi] [http://shmarodral.ifrance.com/text/day-office.htm day office] [http://jazzyjoe.ifrance.com/cartina-geografia/ cartina geografia greca] [http://cikumuffin.ifrance.com/topic/cliffhanger/ cliffhanger] [http://shotlandetz.ifrance.com/blog/free-codec/ free codec dvd] [http://liubash.ifrance.com/new/cyber-dsc.htm cyber dsc t33] [http://firejedi.ifrance.com/new/viaggi-budapest/ viaggi budapest] [http://cikumuffin.ifrance.com/topic/digital/ digital 500] [http://firejedi.ifrance.com/new/testo-in/ testo in italiano di leave di jojo] {{Template:split-review}}
{{task}}
{{task}}


Line 65: Line 65:
char *p = (char *) string;
char *p = (char *) string;
while (*p != '\0') length ;
while (*p++ != '\0') length++;
return 0;
return 0;
Line 82: Line 82:
}
}


==[[C plus plus|C ]]==
==[[C plus plus|C++]]==
[[Category:C plus plus|C ]]
[[Category:C plus plus|C++]]


'''Standard:''' [[ISO C plus plus|ISO C ]] (AKA [[C plus plus 98|C 98]]):
'''Standard:''' [[ISO C plus plus|ISO C++]] (AKA [[C plus plus 98|C++98]]):


'''Compiler:''' g 4.0.2
'''Compiler:''' g++ 4.0.2


#include <string> // note: '''not''' <string.h>
#include <string> // note: '''not''' <string.h>
Line 114: Line 114:


'''Platform:''' [[.NET]]
'''Platform:''' [[.NET]]
'''Language Ver
'''Language Version:''' 1.0+
2000
sion:''' 1.0


string s = "Hello, world!";
string s = "Hello, world!";

Revision as of 19:16, 10 September 2007

This task has has been split off from another task. Its programming examples are in need of review to ensure that they fit the requirements of the new task.
Task
String Byte Length
You are encouraged to solve this task according to the task description, using any language you may know.

In this task, the goal is to find the byte length of a string. This means encodings like UTF-8 may need to be handled specially, as there is not necessarily a one-to-one relationship between bytes and characters, and some languages recognize this.

For character length, see String Character Length.

4D

$length:=Length("Hello, world!")

ActionScript

myStrVar.length()

Ada

Compiler: GCC 4.1.2

Str    : String := "Hello World";
Length : constant Natural := Str'Length;

AppleScript

count of "Hello World"

AWK

From within any code block:

w=length("Hello, world!")      # static string example
x=length("Hello," s " world!") # dynamic string example
y=length($1)                   # input field example
z=length(s)                    # variable name example

Ad hoc program from command line:

echo "Hello, world!" | awk '{print length($0)}'

From executable script: (prints for every line arriving on stdin)

#!/usr/bin/awk -f
{print"The length of this line is "length($0)}

C

Standard: ANSI C (AKA C89):

Compiler: GCC 3.3.3

 #include <string.h>

 int main(void) 
 {
   const char *string = "Hello, world!";
   size_t length = strlen(string);
          
   return 0;
 }

or by hand:

 int main(void) 
 {
   const char *string = "Hello, world!";
   size_t length = 0;
   
   char *p = (char *) string;
   while (*p++ != '\0') length++;                                         
   
   return 0;
 }

or (for arrays of char only)

 #include <stdlib.h>
 
 int main(void)
 {
   char const s[] = "Hello, world!";
   size_t length = sizeof s - 1;
   
   return 0;
 }

C++

Standard: ISO C++ (AKA C++98):

Compiler: g++ 4.0.2

 #include <string> // note: not <string.h>
 
 int main()
 {
   std::string s = "Hello, world!";
   std::string::size_type length = s.length(); // option 1: In Characters/Bytes
   std::string::size_type size = s.size();     // option 2: In Characters/Bytes
   // In bytes same as above since sizeof(char) == 1
   std::string::size_type bytes = s.length() * sizeof(std::string::value_type); 
 }

For wide character strings:

 #include <string>
 
 int main()
 {
   std::wstring s = L"\u304A\u306F\u3088\u3046";
   std::wstring::size_type length = s.length() * sizeof(std::wstring::value_type); // in bytes
 }

C#

Platform: .NET Language Version: 1.0+

string s = "Hello, world!";
int clength = s.Length;  // In characters
int blength = System.Text.Encoding.GetBytes(s).length; // In Bytes.

Clean

Clean Strings are unboxed arrays of characters. Characters are always a single byte. The function size returns the number of elements in an array.

import StdEnv

strlen :: String -> Int
strlen string = size string 

Start = strlen "Hello, world!"

ColdFusion

  #len("Hello World")#

Common Lisp

  (length "Hello World")

Component Pascal

  LEN("Hello, World!")

Forth

Interpreter: ANS Forth

Strings in Forth come in two forms, neither of which are the null-terminated form commonly used in the C standard library.

Counted string

A counted string is a single pointer to a short string in memory. The string's first byte is the count of the number of characters in the string. This is how symbols are stored in a Forth dictionary.

 CREATE s ," Hello world" \ create string "s"
 s C@ ( -- length=11 )

Stack string

A string on the stack is represented by a pair of cells: the address of the string data and the length of the string data (in characters). The word COUNT converts a counted string into a stack string. The STRING utility wordset of ANS Forth works on these addr-len pairs. This representation has the advantages of not requiring null-termination, easy representation of substrings, and not being limited to 255 characters.

S" string" ( addr len)
DUP .   \ 6

Haskell

Interpreter: GHCi 6.6, Hugs

Compiler: GHC 6.6

strlen = length "Hello, world!"

IDL

Compiler: any IDL compiler should do

 length = strlen("Hello, world!")

Java

Java encodes strings in UTF-16, which represents each character with one or two 16-bit values. The length method of String objects returns the number of 16-bit values used to encode a string, so the number of bytes can be determined by doubling that number.

String s = "Hello, world!";
int byteCount = s.length() * 2;

An other way to know the byte length of a string is to explicitly specify the charset we desire.

String s = "Hello, world!";
int byteCountUTF16 = s.getByte("UTF-16").length;
int byteCountUTF8  = s.getByte("UTF-8").length;

JavaScript

JavaScript encodes strings in UTF-16, which represents each character with one or two 16-bit values. The length property of string objects gives the number of 16-bit values used to encode a string, so the number of bytes can be determined by doubling that number.

var s = "Hello, world!";
var byteCount = s.length * 2; //26

JudoScript

 //Store length of hello world in length and print it
 . length = "Hello World".length();

Lua

Interpreter: Lua 5.0 or later.

 string="Hello world"
 length=#string

mIRC Scripting Language

Interpreter: mIRC

alias stringlength { echo -a Your Name is: $len($$?="Whats your name") letters long! }

OCaml

Interpreter/Compiler: Ocaml 3.09

String.length "Hello world";;


Perl

Interpreter: perl 5.8

Strings in Perl consist of characters. Measuring the byte length therefore requires conversion to some binary representation (called encoding, both noun and verb).

use utf8; # so we can use literal characters like ☺ in source
use Encode qw(encode);

print length encode 'UTF-8', "Hello, world! ☺";
# 17. The last character takes 3 bytes, the others 1 byte each.

print length encode 'UTF-16', "Hello, world! ☺";
# 32. 2 bytes for the BOM, then 15 byte pairs for each character.

PHP

 $length = strlen('Hello, world!');

PL/SQL

DECLARE
  string VARCHAR2( 50 ) := 'Hello, world!';
  stringlength NUMBER;
BEGIN
  stringlength := length( string );
END;

Pop11

Currently Pop11 supports only strings consisting of 1-byte units. Strings can carry arbitrary binary data, so user can for example use UTF-8 (however builtin procedures will treat each byte as a single character). The length function for strings returns length in bytes:

lvars str = 'Hello, world!';
lvars len = length(str);

Python

Interpreter: Python 2.4

length = len("The length of this string will be determined")

Ruby

 string="Hello world"
 print string.length

or

 puts "Hello World".length

Scheme

 (string-length "Hello world")

Smalltalk

 string := 'Hello, world!".
 string size.

Standard ML

Interpreter: SML/NJ 110.60, Moscow ML 2.01 (January 2004)

Compiler: MLton 20061107

val strlen = size "Hello, world!";

Tcl

Basic version:

 string bytelength "Hello, world!"

or more elaborately, needs Interpreter any 8.X. Tested on 8.4.12.

 fconfigure stdout -encoding utf-8; #So that Unicode string will print correctly
 set s1 "hello, world"
 set s2 "\u304A\u306F\u3088\u3046"
 puts [format "length of \"%s\" in bytes is %d"  $s1 [string bytelength $s1]]
 puts [format "length of \"%s\" in bytes is %d"  $s2 [string bytelength $s2]]

Toka

This will include the terminating 0 in the length.

 " hello, world!" count 

UNIX Shell

With external utilities:

Interpreter: any bourne shell

 string='Hello, world!'
 length=`echo -n "$string" | wc -c | tr -dc '0-9'`
 echo $length # if you want it printed to the terminal

With SUSv3 parameter expansion modifier:

Interpreter: Almquist SHell (NetBSD 3.0), Bourne Again SHell 3.2, Korn SHell (5.2.14 99/07/13.2), Z SHell

 string='Hello, world!'
 length="${#string}"
 echo $length # if you want it printed to the terminal


VBScript

LenB(string|varname) 

Returns the number of bytes required to store a string in memory Returns null if string|varname is null

xTalk

Interpreter: HyperCard

 put the length of "Hello World"

or

 put the number of characters in "Hello World"