C语言指针问题 **s 中 s与&s的意义和关系 编程语言的分类和用途

\u4ec0\u4e48\u662f\u7f16\u7a0b\u8bed\u8a00\u6846\u67b6

\u9886\u5b66\u7f51\u4e3a\u4f60\u89e3\u7b54\uff1a
\u6240\u8c13\u6846\u67b6\u5c31\u662f\u5199\u597d\u7684\u4e00\u5927\u5806\u7c7b\uff0c\u53ef\u4ee5\u8fd9\u4e48\u7406\u89e3\u3002 \u9664\u4e86\u4e00\u5927\u5806\u7c7b\u4ee5\u5916\u8fd8\u53ef\u80fd\u6709\u4e00\u4e9b\u89c4\u5219\uff0c \u6bd4\u5982\u547d\u540d\uff0c\u8def\u5f84\u7b49\u3002\u5728\u9075\u5faa\u8fd9\u4e2a\u89c4\u5219\u7684\u60c5\u51b5\u4e0b\u8c03\u7528\u6846\u67b6\u7c7b\u5e93\u63d0\u4f9b\u7684\u65b9\u6cd5\u3002

\u53e6\u5916\u6846\u67b6\u8ddf\u5f00\u6e90\u4e0d\u5f00\u6e90\u662f\u6ca1\u6709\u5173\u7cfb\u7684\uff0c \u5f00\u6e90\u53ea\u662f\u8bf4\u4f60\u53ef\u4ee5\u5f97\u5230\u8fd9\u4e2a\u6846\u67b6\u7684\u6e90\u4ee3\u7801\uff0c\u800c\u4e0d\u5f00\u6e90\u7684\u53ea\u662f\u770b\u4e0d\u5230\u6e90\u4ee3\u7801\u800c\u5df2\u3002

\u6bd4\u5982.net\u672c\u8eab\u4e0d\u662f\u5f00\u6e90\u7684\uff0c\u4f46\u6709\u5f88\u591a\u6846\u67b6\u662f\u5f00\u6e90\u7684\uff0c\u6bd4\u5982\u6700\u8457\u540d\u7684servicestack

\u5f00\u6e90\u8ddf\u514d\u8d39\u53c8\u662f\u4e0d\u540c\u7684\u6982\u5ff5\uff0c\u5f00\u6e90\u8f6f\u4ef6\u6709\u5f88\u591a\u4e0d\u540c\u79cd\u7c7b\u7684license\uff0c\u6709\u4e9b\u662f\u53ef\u4ee5\u968f\u610f\u4fee\u6539\u4f7f\u7528\u7684\uff0c\u6709\u4e9b\u662f\u53ef\u4ee5\u4f7f\u7528\u5728\u975e\u5546\u4e1a\u9879\u76ee\u4e2d\u7684\uff0c\u6709\u4e9b\u5219\u662f\u9700\u8981\u4ed8\u8d39\u7684

\u7f16\u7a0b\u8bed\u8a00\u7684\u5206\u7c7b\u4e3b\u8981\u6709\uff1aJavaScript\u3001PHP\u3001C\u3001C++\u3001java\u3002
1\u3001C\u8bed\u8a00\uff1a\u5b9e\u6a21\u5f0f\u3001\u4fdd\u62a4\u6a21\u5f0f\u3001\u8c03\u5ea6\u3001\u4e2d\u65ad\u3001\u8c03\u7528\u6808\u3001\u56de\u8c03\u2026\u2026\u57fa\u672c\u4e0a\u8ba1\u7b97\u673a\u79d1\u5b66\u91cc\u9762\u7684\u57fa\u672c\u6982\u5ff5\u90fd\u4f1a\u6d89\u53ca\u3002\u7ed3\u6784\u5316\u7f16\u7a0b\uff0c\u5373\u5c06\u89e3\u51b3\u65b9\u6848\u63cf\u8ff0\u4e3a\u4e00\u4e2a\u6e05\u6670\u7684\u8fc7\u7a0b\uff0c\u8fd9\u5176\u4e2d\u4f1a\u6d89\u53ca\u6570\u636e\u7684\u5efa\u6a21\uff0c\u63a5\u53e3\u7684\u5b9a\u4e49\uff0c\u9879\u76ee\u6574\u4f53\u7684\u7ec4\u7ec7\u7ed3\u6784\u3002
2\u3001c++\u8bed\u8a00\uff1a\u865a\u51fd\u6570\u3001\u865a\u8868\u3001\u5185\u8054\u3001\u591a\u7ee7\u627f\u3001const\u3001\u6cdb\u578b\u3001\u6a21\u677f\uff08\u8bed\u8a00\u76f8\u5173\uff09opencv\u3001OGRE\u30013D\u6e32\u67d3\u3001GPU\u3001mesh\u3001skeleton\u3001\u5e27\u5faa\u73af\u3001DX\u3001GUI\u3001MFC\u3001Qt\u3001\u6d88\u606f\u961f\u5217\u3001\u975e\u963b\u585eIO\u3002\u9002\u5408\u9886\u57df\uff1a\u591a\u5a92\u4f53\u3001\u9ad8\u6027\u80fd\u7f51\u7edc\u670d\u52a1\u5668\u7b49\u8f83\u8bb2\u7a76\u6548\u7387\u7684\u5e94\u7528\u7a0b\u5e8f\u3002

3\u3001java\uff1a\u5b57\u8282\u7801\u3001\u865a\u62df\u673a\u3001\u5783\u573e\u56de\u6536\u3001\u63a5\u53e3\u3001\u591a\u7ebf\u7a0b\u3001\u5305\u3001\u7a0b\u5e8f\u5e93\u3001\u53cd\u5c04\u3001\u6846\u67b6\u3001\u96c6\u6210\u3001\u7ec4\u4ef6\u3001http\u3001web\u3001\u6570\u636e\u5e93\u3001SSH\u3001javaee\u3002java\u7684\u7a0b\u5e8f\u6bd4\u8f83\u8bb2\u7a76\u6269\u5c55\u6027\u548c\u53ef\u7ef4\u62a4\u6027\uff0c\u4e00\u822c\u4f1a\u4f7f\u7528\u6bd4\u8f83\u591a\u7684\u8bbe\u8ba1\u6a21\u5f0f\uff0c\u5e38\u7528\u7684\u7a0b\u5e8f\u7ec4\u7ec7\u5f62\u5f0f\u662fMVC\u3001\u76d1\u542c\u8005\u6a21\u5f0f\u7b49\u3002
4 \u3001Javascript\uff1a\u95ed\u5305\u3001\u5bf9\u8c61\u3001\u51fd\u6570\u3001CSS\u3001DOM\u3001Ajax\u3001HTML5\u3001node.js\u3001V8\u3002\u57fa\u4e8eprototype\u7684OO\uff0c\u4ee5\u53ca\u57fa\u4e8e\u95ed\u5305\u7684\u51fd\u6570\u5f0f\u7f16\u7a0b\uff08\u540e\u8005\u7528\u7684\u66f4\u591a\uff09\u3002\u5e38\u7528\u4ee3\u7801\u7ec4\u7ec7\u5f62\u5f0f\uff1a\u4e8b\u4ef6\u89e6\u53d1\u7684\u56de\u8c03\u673a\u5236\uff08node.js\u4e0e\u524d\u7aef\u7684\u533a\u522b\u662f\u5176\u81ea\u5df1\u5b9a\u4e49\u3001\u89e6\u53d1\u4e8b\u4ef6\uff09\u3001\u57fa\u4e8e\u975e\u963b\u585e\u5f02\u6b65IO\u7684\u6846\u67b6\uff08node.js\uff09\u3002
5\u3001PHP\u5373\u201c\u8d85\u6587\u672c\u9884\u5904\u7406\u5668\u201d\uff0c\u662f\u4e00\u79cd\u901a\u7528\u5f00\u6e90\u811a\u672c\u8bed\u8a00\u3002PHP\u662f\u5728\u670d\u52a1\u5668\u7aef\u6267\u884c\u7684\u811a\u672c\u8bed\u8a00\uff0c\u4e0eC\u8bed\u8a00\u7c7b\u4f3c\uff0c\u662f\u5e38\u7528\u7684\u7f51\u7ad9\u7f16\u7a0b\u8bed\u8a00\u3002PHP\u72ec\u7279\u7684\u8bed\u6cd5\u6df7\u5408\u4e86C\u3001Java\u3001Perl\u4ee5\u53ca PHP \u81ea\u521b\u7684\u8bed\u6cd5\u3002\u5229\u4e8e\u5b66\u4e60\uff0c\u4f7f\u7528\u5e7f\u6cdb\uff0c\u4e3b\u8981\u9002\u7528\u4e8eWeb\u5f00\u53d1\u9886\u57df\u3002
\u53c2\u8003\u8d44\u6599\u6765\u6e90\uff1a\u767e\u5ea6\u767e\u79d1\u2014\u7f16\u7a0b\u8bed\u8a00

char *a="123";程序里开辟了一空内存,存放"123",并用指针*a指向它,char**s=&a,把a指向的地址赋给指针的指针**s,但是它没开辟内存空间。在你的程序中开辟内存空间只有char*a="123".
你可以用VS这IDE打断电调试,开内存的地址就知道了。
对于初学者,理解这有些难度,但是你多看看,多想想几次下来你就明白了,没啥难点。平时多看看C语言资料(如C语言必知495个问题,C++ PRIME等),几本书下来任何语言不成问题

此处s是一个指向char*(字符指针)的指针。
*s是s所指向的指针的值(一个内存地址),**s是s所指向的指针所指向的字符的值。
&s是取得s变量在内存中的地址。

a 指针,指向字符串常量
s 是a的地址,也可以说是指向a指针的指针
*s 这个就是a指针
&s 二级指针s的地址,或者说指向这个二级指针的指针

扩展阅读:免费拍照答题一秒出答案 ... c语言指针的基本知识 ... c语言指针常见问题 ... c语言指针知识点总结 ... c语言基础知识入门 ... c语言使用指针的好处 ... c 语言 指针 ... 有关c语言指针的问题 ... c语言中指针p和 p的区别 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网