在标准C中,一个函数是否可以使用别名指向的int *
修改const int *
类型的参数呢?换句话说,下面的代码是否保证在标准C中始终返回42和1?
#include <stdio.h>
void foo(const int *a, int *b)
{
printf("%d\n", *a);
*b = 1;
printf("%d\n", *a);
}
int main(void)
{
int a = 42;
foo(&a, &a);
return 0;
}