1. 在输入一个字符串的时候,一般请加上const 修饰

比如 :

int strlen(const char * str);

其中,str字符串在本函数中是不需要进行修改的,所以可以用const修饰 这样,我们引用strlen函数的时候可以这样写:

strlen("abc");

如果没有const,一个warning就会来了

区别的是

char *strcpy(char *dest,const char *src); 

第一个参数是输出的,第二个参数是输入的。 输入的参数可以直接写数据,而输出参数必须要预先定义一个空间

char dest[200];
strcpy(dest,"abc");

如此才行。

2. const的意思指的是当前定义的目标是readonly的意思

#include <stdio.h>

int main()
{
    const char *p = "abc";
    char str[]="def";
    p = str;
    printf("%s",p);
    return 0;
}

编译运行结果是什么呢? 答案是: 无报错,输出def; const 修饰后,p指向的内存是readonly的,但是它本身的值是可以变化的。

Categories: Code

Yu

Ideals are like the stars: we never reach them, but like the mariners of the sea, we chart our course by them.

Leave a Reply

Your email address will not be published. Required fields are marked *