C常量的地址问题! - C/C++ / C语言
如何在C中获取常量的地址?
比如说:
#include<stdio.h>
#include<stdlib.h>
#define FFF 0xff
int main(void)
{
return 0;
}
我现在想获取常量 FFF 的地址,main函数中应该怎样写?
谢谢!!!
你的宏在程序中根本没用到,不可能得到它的地址
宏只是文本替换!
那是宏,只是简单替换,理解误区
明白,谢谢大家!!我还有一个问题:不理解下面这段代码:
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int b = 3;
int *i;
i = (int *)b; (1)
printf("%d %d\n", i, &i);
return 0;
}
怎么理解语句(1),为什么这样没有语法错误而能编译通过。。它的输出结果是:3和i的地址,不理解为什么会输出3。。。。
i是1个指针.它指向的地址为3
就相当于:i = (int *)3;
而i本身是变量,它有一个地址的
i是1个指针.它指向的地址为3 ,更简单地说 i的值就是3;
i本身是一个指针,而b是一个变量,i = (int *)b; 这样不是把一个变量强制转换成一个指针了吗?可以这样的吗?
这是宏,在编译了就没了
这个是把变量b的值(3)转成一个指针,b不会有任何变化的
有关指针的,还可参考我的另一贴:
http://topic.csdn.net/u/20100417/11/dc35e9bd-bb24-459c-afc0
相关问答:
写了个测试程序如下
struct hostent *hp;
char AlarmDevIP[20];
int x2;
hp = gethostbyname("www.google.com");
if (hp)
{
......
SHIFT加F10与那个键右ctrl边上的那个键功能一样,想屏这个
但不知要怎么写那个组合键!
有没哪个大侠放一段这个的代码或写一段
http://topic.csdn.net/u/20090609/15/7dc9fb70-243f-4070-9cfd-34e48b66e6c6.html
......
如题,C/C++中的execl怎么调用写好的java程序,
execl("/opt/java1.5/bin/java","MyClass",NULL);
这样的不行哦。
不会.
运行java程序
找工具查看一下那个程序的命令行
搜索下:jni ......
在根目录/lib中存放一个log.c,log.h,并用下面的语句:
gcc -c log.c
ar crv liblog.a log.o
编译出一个liblog.a静态库,然后在文件夹:/testfile中创建一个test.c和testc.c,test.c中引用了testc.c中定义的方法 ......