const函数参数优点
2013-06-04 15:16
162 查看
const char *
debug_location(file, line, func)
const char *file;// 传入指针 函数内部有机会修改指针内存内容,所以加上const
int line;
// 函数内部无法修改该值,所有没有const
const char *func;// 同第一个参数
{
static char buf[1024];
// 不用每次调用函数,函数分配
const char *p;
/* truncate pathname */
p = strrchr(file, '/');
if (p)
p++;
else
p = file;
if (func)
snprintf(buf, sizeof(buf), "%s:%d:%s()", p, line, func);
else
snprintf(buf, sizeof(buf), "%s:%d", p, line);
return buf;
}
debug_location(file, line, func)
const char *file;// 传入指针 函数内部有机会修改指针内存内容,所以加上const
int line;
// 函数内部无法修改该值,所有没有const
const char *func;// 同第一个参数
{
static char buf[1024];
// 不用每次调用函数,函数分配
const char *p;
/* truncate pathname */
p = strrchr(file, '/');
if (p)
p++;
else
p = file;
if (func)
snprintf(buf, sizeof(buf), "%s:%d:%s()", p, line, func);
else
snprintf(buf, sizeof(buf), "%s:%d", p, line);
return buf;
}
相关文章推荐
- const 修饰函数参数,返回值,函数体,保护数据
- 编写一个函数 int count_chars(char const *str,char const *chars) 函数应该在第一个参数中进行查找, 并返回匹配第二个参数所包含的字符的数量。
- Delphi 中 函数参数中的 const 修饰符的本质以及注意事项
- Delphi与VC如何实现变参函数,类似Format、sprintf的变长参数实现原理,va_list与Array of const
- [C++] C++中const修饰指针,变量, 函数参数和函数返回值的用法总结
- 关于函数参数的const char *和char*引发的bug
- const 修饰函数参数,返回值,函数体
- Delphi 中 函数参数中的 const 修饰符的本质以及注意事项
- *Delphi函数参数传递 默认参数(传值)、var(穿址)、out(输出)、const(常数)四类
- 常引用,const引用的案例,以及常引用作函数参数
- const 函数参数
- C++面向对象、const和指针混用、函数参数的默认值
- C语言中的可变参数函数 三个点“…”printf( const char* format, ...) 博客分类: C语言 ANSI C CC++C#D语言编程 第一篇
- const可以出现在函数头,参数列表,以及参数尾
- C语言技巧【枚举作为函数变量类型】【数据输入与输出】【do while循环体内scanf函数被跳过,循环结束】【用const修饰函数的参数】
- [收藏]C++ Tips(9)--函数参数中的const
- Const 重载解析(const参数重载 和 const成员函数重载)
- 关于函数调用中的const参数
- const引用做形参---函数参数的传递,并不都是复制
- 函数中参数用const修饰