Branch data Line data Source code
1 : : /****************************************************************************** 2 : : * Copyright (c) 2004, 2008 IBM Corporation 3 : : * All rights reserved. 4 : : * This program and the accompanying materials 5 : : * are made available under the terms of the BSD License 6 : : * which accompanies this distribution, and is available at 7 : : * http://www.opensource.org/licenses/bsd-license.php 8 : : * 9 : : * Contributors: 10 : : * IBM Corporation - initial implementation 11 : : *****************************************************************************/ 12 : : 13 : : #include <stddef.h> 14 : : 15 : : size_t strlen(const char *s); 16 : 320 : size_t strlen(const char *s) 17 : : { 18 : 320 : size_t len = 0; 19 : : 20 : 7155 : while (*s != 0) { 21 : 6835 : len += 1; 22 : 6835 : s += 1; 23 : : } 24 : : 25 : 320 : return len; 26 : : } 27 : : 28 : : size_t strnlen(const char *s, size_t n); 29 : 0 : size_t strnlen(const char *s, size_t n) 30 : : { 31 : 0 : size_t len = 0; 32 : : 33 : 0 : while (*s != 0 && n) { 34 : 0 : len += 1; 35 : 0 : s += 1; 36 : 0 : n--; 37 : : } 38 : : 39 : 0 : return len; 40 : : }