char+str+abc

  • c语言问题 char str[ ]=“ABC”,*p=str;
    答:楼上pc_ace太搞笑了...p是str的首地址.往后面数3个当然是字符串结尾,也就是'\0'...(p+3)改为*(p+2),输出自然应该是'C'的ascii码,自然是67 int s[2][3]={1,2,3,4,5,6}, (*p)[3]; p=s;则p+1是s[1]那个数组
  • main(){char str[]=“ABC”,*p=str;printf("%d\n",*(p+2));请高手详 ...
    答:输出 67 指针p指向str[0],即存储字符'A'的内存,所以p+2指向'C',输出格式为%d,所以以十进制输出'C'的ASCII码67
  • C语言中charstr什么意思?
    答:char 是字符,比如char ccc,此时cccc表示一个字符,我们可以用%c的格式化打印出来。另外,给字符赋值一般这样:ccc = 'd';这句的意思是把d这个字符赋值给ccc。char 还可以声明字符数组,即我们所说的字符串。比如char str_1[100];这表示在栈区申请了可自动回收的100字节的空间,用来存放100个字符。
  • char str1[]="abc";char str2[]="abc";cout<<(str1==str2)<<endl;_百...
    答:cout<<(str1==str2)<<endl;这一句就是输出一行数字。因为str1与str2是分别指向两个不同的字符串首地址的字符指针,所以它们的值不相等。程序段运行后,就会输出0(即“假”)。
  • char str1[]="abc";char str2[]="abc";cout<<(str1==str2)<<endl;_百...
    答:str1和str2是数组名,他们都是指针ni他们包含的内容相同但地址不同,故bool表达式str1==str2为假。所以是0,至于最后两个为什么是1呢?因为str3和str4,5 ,6是指针,它们都指向同一个常量“abc”,abc只有一个地址也就是说它们的值是一样的,所以它们是相等的 其他都是这个原理就是考察你地址...
  • c语言 什么意思 看不懂 char str[]="abc\0def\0ghi",*p=str;
    答:分析char str[]="abc\0def\0ghi",*p=str;这一句要拆开来看,它与下面的代码行等效:char str[]="abc\0def\0ghi";char *p;p=str;第一行:char str[]="abc\0def\0ghi"的意思是声明一个名为str的char型数组,并用字符串abc\0def\0ghi初始化(就是由编译器把这个字符串的字符一个接一...
  • 对于定义 char str[] = "abc\000def\n"(注:其中0为数字零),求字符串...
    答:char str[] = "abc\000def\n"\000是字符串结束符,字符串str的长度就是结束符之前的字符个数,也就是说长度len为3。
  • 下面程序段的运行结果是( ) char str[]=”ABC”,*p=str; printf(“%d...
    答:选择B。字符串str实际上后面加了一个'\0',而*(p+3)即将第字符串第四个字符的ascii打印出来,这个字符是'\0'.它的ascii码为0
  • char str[]="abc\0def\0gji",*p=str; printf("%s",p+5); 运行结果是什...
    答:char str[]="abc\0def\0gji",*p=str; //这里p指向了str的首地址,即a所在的位置 p+0 指向a p+1 指向b p+2 指向c \0 整体是一个字符,(下同。看书中的转义字符说明) p+3 p+4 指向d p+5 指向e printf("%s",p+5); //printf在输出字符串时,遇到'\0'则停止...
  • char str[]="abc\0def";printf("%s",str)……求详解
    答:同意楼上的解释!!!"abc\0def"是字符常量,\0是字符串的结束标志,系统默认\0前面才是字符串的部分,str是数组名,[]是数组的元素,即字符的个数;printf("%s",str)是字符的输出,%s是表示把整个字符串输出,即输出abc

  • 网友评论:

    艾符19615631740: 初学C指针 -
    66789孟滕 : 1. char *str = "abc" 的意思就是 str[3]="abc";至于"%s,a=%d,b=%d\n",在printf中用做格式化输出.即是:printf("%s,a=%d,b=%d\n", ,"a+=b",a,b)%s..当然是"a+=b"了, %d..a的值11,b的值102.main的参数:int argc,char *argv[] ,...

    艾符19615631740: char str;str="abc";这样定义为什么不行 -
    66789孟滕 : char 是单字节类型,只能存储单字符. "abc"这是一个字符串,所以不能用char来存储. 可以这样写: char str[4]; str="abc";

    艾符19615631740: char *str = "abc"; str[0] = ""; str就变成空字符串? -
    66789孟滕 : char *str = "abc"; //str是字符串指针,单元中存放"abc"首地址.str[0]...

    艾符19615631740: c语言 什么意思 看不懂 char str[]="abc\0def\0ghi",*p=str; -
    66789孟滕 : 分析char str[]="abc\0def\0ghi",*p=str;这一句要拆开来看,它与下面的代码行等效: char str[]="abc\0def\0ghi"; char *p; p=str; 第一行:char str[]="abc\0def\0ghi"的意思是声明一个名为str的char型数组,并用字符串abc\0def\0ghi初始化(...

    艾符19615631740: char str[]="abc"与char str[]={'a''b''c'}的大小 -
    66789孟滕 : 先纠正一个错误,char str[3]={'a', 'b', 'c'};/*用逗号隔开*/.char str[]="abc"; 这个str占用4字节,这是因为C字符串,编译器会自动加一个'\0'."abc"在内存中实际上是"abc\0",所以为四字节. char str[3]={'a', 'b', 'c'}; 这个容易理解,你定义时候已经定义为char [3],所以占3字节.

    艾符19615631740: 今天遇到这样一种写法(C语言):char * str="abc""def"; 这样也能给字符串赋值,语法好奇怪,你们见过吗; -
    66789孟滕 : 对的,两个被双引号括起来的字符串,只要当中是空格(包括换行),C就认为这是一个字符串.在《C PRIMER PLUS》第四章的 Exploring and Exploiting printf() and scanf()小节中有如下引文:new with ANSI C, is string concatenation. If you follow one quoted string constant with another, separated only by whitespace, C treats the combination as a single string

    艾符19615631740: c++中char *str与char str[] -
    66789孟滕 : #include <stdio.h> #include <string.h>int main() { char *str_1="abc"; char str_2[]="abc";str_1 +=1; // str_2 +=1; 不一样, 因为pointer已为const, 不允许改便system("pause"); return 0; }

    艾符19615631740: char str[]="abc\0def";printf("%s",str)……求详解 -
    66789孟滕 : 输出abc. %s表示输出的是字符串,字符串以\0为结束标志,str[]中abc之后就有\0,所以,输到abc截止

    艾符19615631740: .下面程序段的运行结果是 .(1级) char str[ ]=“ABC”,*p=str; printf(“%s\n”,*(p+1)); A) 66 B) BC -
    66789孟滕 : 这道题有问题的,*(p+1)是取值,即取得字符'B'的值66,printf(“%s\n”,*(p+1))或将引起程序崩溃! 如果是如下的代码: char str[ ]=“ABC”,*p=str; printf(“%s\n”,(p+1)); 答案才是B!

    艾符19615631740: char str[]="ABCD",*p=str; printf("%d\n",*(p+4)); -
    66789孟滕 : 这个其实不难,最主要的是要理解指针,*(p+4),p代表str内存中的第一个位置,也就是说,原本*p的值是A,*(p+1)是B,*(p+2)是C,*(p+3)D,所以*(p+4)已经超出了str的内存,他指向一块空的内存,所以打印出来的结果就为0了!

    热搜:char str 10 china \\ char str 20 \\ char str 1234 \\ sigma-aldrich \\ getchar \\ char str hello \\ char str good \\ char str 括号里的数字 \\ str 10 \\ character ai安卓版 \\ cathay pacific \\ const char \\ beta character ai \\ char转string c++ \\ scratch少儿编程 \\ charles&keith是啥牌子 \\ char str 是什么意思 \\ args \\ 对于定义charstr \\ cachito诱桃失控好用吗 \\

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