实现strlen()函数,strcmp()函数 const知识点

1、strlen()函数的实现:

#include<stdio.h>

int strLen(char *str);

int strLen(char *str){
    int i = 0;
    
    while(*str){
        str++;
        i++;
    }
    
    return i;
}

void main(void){
    char *str = "abcdefg";
    int length;
    
    length = strLen(str);
    printf("%d\n", length);
}

2、strcmp()函数的实现:

#include<stdio.h>

int strCmp(char *str1, char *str2);

int strCmp(char *str1, char *str2){
    while(*str1 == *str2 && *str1 && *str2){
        str1++;
        str2++;
    }
    
    return *str1 - *str2;
}

void main(void){
    char *str1 = "hello";
    char *str2 = "hell";
    
    printf("%d\n", strCmp(str1, str2));
}

3、const的用法:

const  只读。

(1)  const int a = 100 <=> int const a = 100;  a空间是只读空间,a空间的值不能更改。

(2)  const int *a; <=> int const *a;  *a的值不能改变,a指针变量的值可以更改。

int* const a;  *a的值可以更改,a指针变量只读,不能改其值

const int* const a;   *a, a 均只读空间,其值不可更改!

const离谁进,修饰谁,谁就不可更改!!!

注意:刚开始用Linux进行编程,(1). Linux下64位与32位的区别:

int都是4字节的。64位下,long 8字节, 指针 8字节

(2).Linux下注释块:#if  0(注释)  1(不注释)

#endif

(3).gcc -c 只编译不连接  gcc   .c   -o  目标文件 编译和连接

(4).objdump -d test(可执行文件) > x86  反汇编文件查看X86内容。

编译结果往往与平台,编译器关系很大!!!

时间: 2024-10-10 06:15:27

实现strlen()函数,strcmp()函数 const知识点的相关文章

c语言常用函数strcmp函数和strcpy函数

(一)strcmp函数 strcmp函数是比较两个字符串的大小,返回比较的结果.一般形式是: i=strcmp(字符串,字符串); 其中,字符串1.字符串2均可为字符串常量或变量:i   是用于存放比较结果的整型变量.比较结果是这样规定的: ①字符串1小于字符串2,strcmp函数返回一个负值; ②字符串1等于字符串2,strcmp函数返回零; ③字符串1大于字符串2,strcmp函数返回一个正值;那么,字符中的大小是如何比较的呢?来看一个例子. 实际上,字符串的比较是比较字符串中各对字符的AS

查找函数+atoi-----注册函数+strcmp函数

loadrunner中接口判断的2中方法    如下: 1. ●查找函数web_reg_find() ● atoi():将字符串转换为整型值 作比较  > 0 1 Action() 2 { 3 //检查点函数+atoi函数 4 web_reg_find("Search=Body", 5 "SaveCount=fin_cnt", 6 "Text=code\":\"0\"", 7 LAST); 8 9 lr_sta

strcpy,strlen, strcat, strcmp函数,strlen函数和sizeof的区别

//计算字符串实际长度        //strlen()函数:当遇到'\0'时,计算结束,'\0'不计入长度之内,如果你只定义没有给它赋初值,这个结果是不定的,它会从首地址一直找下去,直到遇到'\0'停止//    char string[] = "I Love You!";//    unsigned long len = strlen(string);//    printf("len = %lu\n", len);  //11//    //    stri

自定义方法实现strcpy,strlen, strcat, strcmp函数,了解及实现原理

unsigned long myStrlen(char string[]) {     unsigned long length = 0;          while (string[length] != '\0') {         length++;     }          return length; } void myStrcpy(char string1[], char string2[]) {     int i = 0;     while (string2[i] !=

strcmp函数和strcpy函数

(一)strcmp函数 strcmp函数是比較两个字符串的大小,返回比較的结果.一般形式是: i=strcmp(字符串,字符串); 当中,字符串1.字符串2均可为字符串常量或变量:i   是用于存放比較结果的整型变量.比較结果是这样规定的: ①字符串1小于字符串2,strcmp函数返回一个负值; ②字符串1等于字符串2,strcmp函数返回零; ③字符串1大于字符串2,strcmp函数返回一个正值;那么,字符中的大小是怎样比較的呢?来看一个样例. 实际上,字符串的比較是比較字符串中各对字符的AS

strstr函数与strcmp函数

1.strstr函数主要完成在一个字串中寻找另外一个字串 函数实现工程如下:摘自http://baike.baidu.com/link?url=RwrzOxs0w68j02J2uQs5u1A56bENwkGJ7WgvKMs8J7RzL6wEO8HZ7pWc1ZPO8TdjsgoJwXDf1g_SkHUoDXwOka char *strstr(const char *s1,const char *s2) { int len2; if(!(len2=strlen(s2)))//此种情况下s2不能指向

C语言::模拟实现strcmp函数

题目要求 编写一个C语言程序模拟实现strcmp函数. (我们依然先模拟实现strcmp函数,然后再对照string.h库中strcmp函数的实现,对比与大师之间的差距.) 算法分析 通过上一篇文章:C语言::strcmp函数功能.原型.用法及实例我们获得了strcmp函数的如下信息: strcmp原型:int strcmp( const char *s1, const char *s2 ); strcmp功能:将两个字符串自左向右逐个字符进行相比(根据ASCII值大小),直到出现不同的字符或遇

编写一个程序实现strcmp函数的功能

写自己的strcat函数------→mycmp 1 #include <stdio.h> 2 #include <string.h> 3 #define N 5 4 5 int mycmp(char *s1, char *s2) 6 { 7 //数组型 8 /* int i = 0; 9 while(s1[i] == s2[i] && s1[i] != '\0') { 10 i++; 11 } 12 13 return s1[i] - s2[i]; */ 14 /

字符串函数---strcmp()与strncmp()详解及实现【转】

本文转载自:http://blog.csdn.net/lanzhihui_10086/article/details/39829623 一.strcmp()与strncmp() strcmp():strcmp(s1,s2);            比较两个字符串.       strncmp():strncmp(s1,s2);       比较两个字符串前n位 比较规则:从左到右逐个字符进行比较(ASCII值),直到出现不同的字符或遇到'\0'为止.       如果全部的字符相同,则认为两字符