美国的GPS真的是免费给全球使用吗?真实情况说出来你可能都不信

当我们去一些不熟悉的地方时候,我们都会用到导航系统,也就是GPS,GPS为我们的出行提供了很大的便利。就目前的一些应用,当你要出门的时候打开软件,导航一下就可以给你提供一条路线,几个标记就能知道你处于哪里要去哪里,告诉你要右转还是左转。GPS对于一些方向感差的人是很有用的,而对于路痴来说,更是必备的工具了。

什么是GPS呢?GPS系统是美国在70年代就开始研究的一个项目。期间经过了20年之久,消耗了很多资源资金,据了解投入了高达几百亿美元,刚开始是美国研发给军队使用的重要的设施,在1994年建设完成后投入使用。GPS系统是由21颗工作卫星和3颗备份卫星作为基础,分布在6条轨道上。GPS系统能对海陆空全方位进行,实时的定位和导航。后来,随着各种原因才开始开放民用。

我们在使用这个功能的时候是不会向我们收费的,那么很多人就有疑问了:这么好用而且又是必需的东西,美国要是收费的话岂不是赚翻了。那么美国为什么提供GPS给人免费使用呢?真实情况说出来你可能都不信其实不是你想象的那样不用收费,这里面是大有文章的。

美国其实是没办法直接进行收费,GPS系统的只能单向通信,因此哪些人在使用美国式不知道的,GPS在美国开放给民用的同时,世界各地也开始跟着使用,所以才无奈免费,没有直接向用户收费,但是却用其他的方式间接收费。我们的手机、汽车等各种设备想要使用GPS就必须安装GPS芯片,GPS芯片的生产商想要获得合法生产GPS芯片的资格,就必须交纳授权费给GPS运营商,GPS导航的软件也要缴纳专利费。而这些软件,设备缴纳费用之后,我们去购买的时候其实就是间接给美国收费了。这些费用就足够让美国获得大量的利润。

这也彰显美国强大的软实力,让美国在世界各地的影响力不断加强。美国通过GPS积累了很多用户,让美国在导航系统在世界上都占据了大部分的市场,规模十分庞大。与此同时,世界上大量的用户运用GPS,美国也掌握了很多各国的数据。

最后就是为了对技术进行垄断、控制。定位、导航等已经是现代人在生活的很多方面都是不能缺少的一部分,美国手中握有GPS技术,而世界上很多国家都是使用GPS系统,开放GPS给其他国家使用,这就能够让其他国家在这方面产生依赖,同时抑制其他国家在定位、导航技术的发展。

而我们国家为了摆脱这种控制,就研发出了“北斗导航系统”,现在我国的北斗的发展趋势很好,逐渐的开始在民用领域使用了。

展开阅读全文

这个问题你很有可能不知道的,不信吗?

04-10

下面这个函数是我从我写的组件源代码中COPY过来的,一个字都没少,而且可以正常的生成DLL文件,唯一的问题就是在我测试该组件里的各接口时,不管我怎么调用,都无条件的出现下面的提示性错误:rnUnhandled exception in Project1.exe(KERNEL32.DLL):0xE06D7363:Microsoft C++ Exception.rn然后我能做的唯一一件事就是,先乖乖的点击确定按钮,这后就进入了VC的Disaassmbly区域了,没办法,不管怎么样在下面的函数里设置断点,也不管用啊,我真的不知道这究竟会是什么错误,望高手或专家们指点指点啊rnrn而且奇怪的是该组件里的所有接口函数都出现上面同一错误,连程序中设置的catch也抓不到啊,我很郁闷呀rnrnrnSTDMETHODIMP CUser::DeleteUserInfo(int x_nType,int x_UID, BSTR *x_Success)rnrntryrnrn // TODO: Add your implementation code herern if(FAILED(pConn.CreateInstance(__uuidof(Connection))))rn rn *x_Success=::SysAllocString(L"Create Instance error when using DeleteUserInfo() function in userinfo.dll!");rn return S_OK;rn rn// if(FAILED(pConn->Open("Provider=MSDASQL.1;Password=;Persist Security Info=True;User ID=SA;Data Source=EXAM;Initial Catalog=EXAM;","","",-1)))rn if (FAILED(pConn->Open("Provider=SQLOLEDB.1; Data Source=WIN2K; User ID=sa; pwd=;Initial Catalog=EXAM;","","",-1)))rn rn *x_Success=::SysAllocString(L"Open Connection error when using DeleteUserInfo() function in userinfo.dll!");rn return S_OK;rn rn CComBSTR m_bstrSQL;rn char m_charUID[10];rn _itoa(x_UID,m_charUID,10);rn//根据不同的用户类型(老师或学生)产生相应的DELETE SQL 语句rn switch(x_nType)rn rn case 0:rn m_bstrSQL.Append("delete STUDENTACCOUNT where SID=");rn break;rn case 1:rn m_bstrSQL.Append("delete TEACHERACCOUNT where TID=");rn break;rn default:rn *x_Success=::SysAllocString(L"type does not exist when using DeleteUserInfo() function in userinfo.dll!");rn return S_OK;rn rn m_bstrSQL.Append(m_charUID);rn _bstr_t m_bstrResult(m_bstrSQL,FALSE);rn CComVariant m_varNum;rn pConn->Execute(m_bstrResult,&m_varNum,-1);rn if(m_varNum.lVal!=1)rn rn *x_Success=::SysAllocString(L"delete operation doesn't succeed when using DeleteUserInfo() function in userinfo.dll!");rn return S_OK;rn rn elsern *x_Success=::SysAllocString(L"Delete Successfully!");rn pConn->Close();rn return S_OK;rnrncatch(...)rnrn *x_Success=::SysAllocString(L"Other Errors!");rn return S_OK;rnrnrnrnrn 郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷郁闷rn 论坛

说VC编译器是垃圾,你还真别不信

02-23

我日!火大啊!!在VC10编译器下调试了2小时,竟然始终无法解决下列编译错误,即使将出错的语句改成:[color=#FF0000]int i = 0;[/color] 也报同样的错误!rn[code=Java]main.c|231|error C2275: 'IntListData' : illegal use of this type as an expression|rnmain.c|231|error C2065: 'p' : undeclared identifier|rnmain.c|231|error C2065: 'p' : undeclared identifier|rnmain.c|231|error C2223: left of '->data' must point to struct/union|rnmain.c|231|error C2065: 'p' : undeclared identifier|rnmain.c|231|error C2223: left of '->next' must point to struct/union|rnmain.c|231|error C2065: 'p' : undeclared identifier|rnmain.c|231|warning C4047: '=' : 'IntListData *' differs in levels of indirection from 'int'|rnmain.c|232|error C2275: 'VoidPtrListData' : illegal use of this type as an expression|rnmain.c|232|error C2065: 'p' : undeclared identifier|rnmain.c|232|error C2065: 'p' : undeclared identifier|rnmain.c|232|error C2223: left of '->data' must point to struct/union|rnmain.c|232|error C2065: 'p' : undeclared identifier|rnmain.c|232|error C2223: left of '->next' must point to struct/union|rnmain.c|232|error C2065: 'p' : undeclared identifier|rnmain.c|232|warning C4047: '=' : 'VoidPtrListData *' differs in levels of indirection from 'int'|rnmain.c|239|error C2275: 'VoidPtrList' : illegal use of this type as an expression|rnmain.c|239|error C2065: 'vl' : undeclared identifier|rnmain.c|240|error C2065: 'vl' : undeclared identifier|rnmain.c|240|error C2223: left of '->pushBack' must point to struct/union|rnmain.c|240|error C2065: 'vl' : undeclared identifier|rnmain.c|241|error C2065: 'vl' : undeclared identifier|rnmain.c|241|error C2065: 'vl' : undeclared identifier|rnmain.c|241|warning C4022: 'function through pointer' : pointer mismatch for actual parameter 1|rnmain.c|241|error C2065: 'vl' : undeclared identifier|rn||=== Build finished: 22 errors, 3 warnings (0 minutes, 0 seconds) ===|rn[/code]rnrn[color=#FF0000][size=24px]可换成MinGW 4.4.5,连个警告都没有!!![/size][/color]rnrn上代码,顺便BS一下MS,草!!rnrn[code=Java]#include rn#include rn#include rn#include rnrn// bool supportrnenum bool false, true ;rntypedef enum bool bool;rnrn// avoid unused warningrn#define UNUSED(x) (void)(x)rnrn// delete selfrn#define OOPC \rn void (*delete)(void*)rnrn// Base classrnstruct Class OOPC; ;rntypedef struct Class Class;rnrn// new/deletern#define new(selfClass) new##selfClass()rn#define delete(self) \rn ((Class *)self)->delete(self); \rn self = 0rnrn// Abstract Classrn#define ABS_CLASS(selfClass) \rn typedef struct selfClass selfClass; \rn void ctor##selfClass(selfClass *self); \rn void dtor##selfClass(selfClass *self); \rn struct selfClassrnrn// Classrn#define CLASS(selfClass) \rn typedef struct selfClass selfClass; \rn selfClass* new##selfClass(); \rn void delete##selfClass(void *self); \rn void ctor##selfClass(selfClass *self); \rn void dtor##selfClass(selfClass *self); \rn struct selfClassrnrn// Constructor / Implemention new##selfClassrn#define CTOR(selfClass) \rn selfClass* new##selfClass() \rn selfClass *self = (selfClass *)malloc(sizeof(selfClass)); \rn if (!self) \rn return 0; \rn ctor##selfClass(self); \rn BIND_D(delete, delete##selfClass); \rn return self; \rn \rn void ctor##selfClass(selfClass *self)rnrn#define ABS_CTOR(selfClass) \rn void ctor##selfClass(selfClass *self)rnrn#define FATHER_CTOR(fatherClass) \rn ctor##fatherClass(F(self, fatherClass))rnrn// Destructor / Implemention delete##selfClassrn#define DTOR(selfClass) \rn void delete##selfClass(void *self) \rn dtor##selfClass(self); \rn free(self); \rn \rn void dtor##selfClass(selfClass *self)rnrn#define ABS_DTOR(selfClass) \rn void dtor##selfClass(selfClass *self)rnrn#define FATHER_DTOR(fatherClass) \rn dtor##fatherClass(F(self, fatherClass))rnrn// Bind member functionrn#define BIND(selfFunc) \rn self->selfFunc = selfFuncrnrn// Bind to Different name functionrn#define BIND_D(selfFunc, staticFunc) \rn self->selfFunc = staticFuncrnrn// Bind to Father's memberrn#define BIND_F(fatherClass, staticFunc) \rn self->fatherClass.staticFunc = staticFuncrnrn// Inheritancern#define INHERIT(fatherClass) \rn struct fatherClass fatherClassrnrn// Get Father Pointerrn#define F(self, fatherClass) \rn ((fatherClass *)(&(self->fatherClass)))rn#define FF(self, fatherClass, grandfatherClass) \rn F(F(self, fatherClass), grandfatherClass)rnrn// Get Son Pointerrn#define S(self, selfClass, sonClass) \rn ((sonClass*)((char *)self - offsetof(sonClass, selfClass)))rn#define SS(self, selfClass, sonClass, grandsonClass) \rn S(S(self, selfClass, sonClass), sonClass, grandsonClass)rnrn// Information hiding for member variablesrn#define MEMBER_DECL(selfClass) \rn struct selfClass##Member *_memberVariablern#define MEMBER_IMPL(selfClass) \rn struct selfClass##Memberrn#define MEMBER_IMPL(selfClass) \rn struct selfClass##Memberrn#define MEMBER_INIT(selfClass) \rn self->_memberVariable = malloc(sizeof(struct selfClass##Member)); \rn memset(self->_memberVariable, 0, sizeof(struct selfClass##Member))rn#define MEMBER_FREE() \rn free(self->_memberVariable); \rn self->_memberVariable = 0rn#define M \rn (*self->_memberVariable)rn[/code]rnrn注意:纯粹的C语言工程,如果想帮忙或测试的话,别建错了工程类型。rn谁能让VC编译器编译通过这个代码,我再散300分给他!!rn黯然收工!!! 论坛

没有更多推荐了,返回首页