原文:字符串赋值给字符指针(char *a="hello")的正确理解方式

对于语句 char a hello 对于这个声明方式,会造成的误解是:声明了一个字符指针 它会指向一个位置 ,将 字符串 赋值给 指针表达式 a 所指向的地址。但正解是:声明了一个字符指针后,并用字符串常量的第一个字符的地址赋值给指针变量a。即正确顺序是: .分配内存给字符指针 .分配内存给字符串 .将字符串首地址赋值给字符指针 这里有两点需要考虑清楚的地方: a只是指向一个字符。举例如下: 结果 ...

2019-04-23 13:54 0 3433 推荐指数:

查看详情

字符串赋值字符指针(char *a="hello")的正确理解方式

对于语句 char *a="hello"; 对于这个声明方式,会造成的误解是:声明了一个字符指针(它会指向一个位置),将“字符串赋值指针表达式"*a"所指向的地址。但正解是:声明了一个字符指针后,并用字符串常量的第一个字符的地址赋值指针变量 ...

Wed Aug 06 18:48:00 CST 2014 0 3509
字符串赋值字符指针的问题

char* str= "0123456789"; 声明一个字符指针,并用字符常量的第一个字符的地址赋给指针变量str 1.分配内存给字符指针 2.分配内存给字符串 3.将字符串首地址赋值字符指针 void main(){ char *str="abc"; cout<< ...

Fri Feb 23 22:40:00 CST 2018 0 909
char *字符串char []字符串理解

一、char* 字符串   1.如何声明一个char*字符串 你可以这样:   char* str = "test";  //str是一个指针,存放在栈区,"test"是一个常量,存放在常量区,VS2017要求这句声明前面必须加上const,因为它所指向的常量字符串是不可 ...

Sat Jul 06 00:04:00 CST 2019 0 2107
char*s = “hello world” 是不是字符串

  用C/C++的老铁们可能对这个都比较熟悉。char* s = "Hello World";这样定义字符串很简单呀,很方便。不用去考虑大小呀什么的,简单快捷。是,这样子是挺方便,而且编译也不会报错会通过,程序也能跑,但是实际上,这样子做是不好的,严格意义上来讲,这样其实是定义了一个野指针。下面 ...

Sat Feb 23 02:07:00 CST 2019 0 666
理解指向字符串常量的指针

输出内容: *p: h(p指向地址的字符值)p: hello(p指向地址开始的字符串,遇'\0'结束)p value: 0x8048530(字符串常量"hello"的地址)&p: 0xbfbe6eec(指针变量p的地址) ...

Mon Jul 03 23:34:00 CST 2017 0 1806
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM