考虑:
char amessage[] = "now is the time";
char *pmessage = "now is the time";
Run Code Online (Sandbox Code Playgroud)
我从C编程语言第2版中读到,上述两个陈述没有做同样的事情.
我一直认为数组是一种操作指针来存储一些数据的便捷方式,但显然情况并非如此...... C中数组和指针之间的"非平凡"差异是什么?
任何人都可以帮助我理解c语言编程中sizeof方法和strlen方法之间的区别吗?
为什么不n等于8以下功能?
void foo(char cvalue[8])
{
int n = sizeof (cvalue);
}
Run Code Online (Sandbox Code Playgroud)
但n 确实等于8这个版本的功能:
void bar()
{
char cvalue[8];
int n = sizeof (cvalue);
}
Run Code Online (Sandbox Code Playgroud)