在运行我的简单Java程序时,我得到了以下错误。这会让我做一个更大的模块。
误差
C:\Java prog>javac Testt.java
Testt.java:10: cannot find symbol
symbol : variable charAt
location: class java.lang.String
kk=k.charAt[i];
^
程序
class Testt
{
public static void main(String args[])
{
String k="my name is bhola ram
当我打印变量的地址之间的差异时,我无法解决为什么会发现差异
代码如下:
int main()
{
int *a,b = 5,e = 0;
int *c,d = 10,f = 0;
long t1,t2;
a = &b;
c = &d;
e = &b;
f = &d;
t1 = e - f;
t2 = a - c;
printf("\n Address of b using a: %x \t %d
我是C的新手,我正在学习指南针。因此,我的问题是:“内存中的变量是否连续地分配字节?”因为我认为,通过从整数指针(char *p_c = p_i - (sizeof(char)))创建char指针,char指针将准确地指向整数的第二个字节。
例如:整数变量需要4个字节,char变量需要1个字节。
#include <stdio.h>
int main(){
int a = 4276545;
int *p = &a;
char *p_c1 = p - (1*sizeof(char));
printf("Value of p_c1 (s
我正在为Dummies读C,并在书中做一个例子。它让我逐行把它写出来。然后,尽管代码有错误,但它仍继续阅读这本书。下面是:
#include <stdio.h>
int main()
{
char me[20];
printf("What is your name?");
scanf("%s",&me);
printf("Darn glad to meet you. %s!\n".me);
return(0);
}
gcc说:
WHORU.C:在函数‘int main():WHORU.C:8:19:警告: for
下面的代码片段显示了我的困惑:
type Ex struct{
A,B int
}
a := []Ex{Ex{1, 2}, Ex{3, 4}} //it works, and I understand it
b := []*Ex{&Ex{1, 2}, &Ex{3, 4}} //it works, and I understand it
c := []Ex{{1, 2}, {3, 4}} //it works, and I don't understand it
d := []*Ex{{1, 2}, {3, 4}} //it works, a
C++不允许使用=复制C样式数组.但是允许使用=复制结构,就像在这个链接中,-> .It还没有任何可信的答案。但是请考虑下面的代码
#include <iostream>
using namespace std;
struct user {
int a[4];
char c;
};
int main() {
user a{{1,2,3,4}, 'a'}, b{{4,5,6,7}, 'b'};
a = b; //should have given any error or warning
不是真正的代码问题,而是一个疑问,为什么C和C++上的数组从0开始?这和内部流程有什么关系吗?
int array[4]={1,2,3,4};
cout<<array[0];
cout<<array[1];
cout<<array[2];
cout<<array[3]; ///This prints 1234
但为什么那不是
int array[4]={1,2,3,4};
cout<<array[1]; //as the first element
cout<<array[2];
cout<<array[3];
今天,一个学生来找我,问我,先生,我们有int,float,char和所有C语言的数据类型。
当我们编写int i时,这意味着对于float f和char c,i是一个variable of type integer,依此类推。
类似地,我们有int *i的意思是i is a pointer to an integer。float *f和char *c也是如此。
我们在C中也有void* v;。
空指针也称为泛型指针。
他问我,既然我们可以有空指针,同样为什么我们不能有void v (作为数据类型)?
我只是说不出话来。所以,我请求您的帮助。如何让他明白。
我正在为一种"c-like"语言编写编译器。目前,编译器支持局部作用域中的数组。可以使用括号表示法-a[0], a[1],...来访问数组的每个元素。为了支持这种数据结构,使用符号表来跟踪当前作用域中的符号以及下一个可用内存空间的地址。为了进行演示,请考虑以下代码:
int a[5]; int b;
使用堆栈实现,并给出一个4字节对齐的内存:为了访问,例如元素a[1],我计算内存位置为
element = ((index+1) * 4) + a.Address; // a.Address is the address of a, which is stored in the s
在C语言中,我希望能够在结构中标注特定的位置。例如:
struct test {
char name[20];
position:
int x;
int y;
};
我可以这样做:
struct test srs[2];
memcpy(&srs[1].position, &srs[0].position, sizeof(test) - offsetof(test, position));
将srs的位置复制到srs1中。
我尝试过在没有任何字节的情况下将位置声明为type,但是这也不起作用:
struct test {
char nam
给定3个具有整数(正数和负数)的可变长度数组,可以通过乘积每个数组中的一个元素来找到最大乘积。
例如:
A = [ 10, -10,15,-12];
B = [10, -12,13,-12];
C = [-11, -10, 9,-12];
上述数组的:使用15、-12、-12.的最大乘积= 2160
我尝试使用蛮力方法O(N^3)实现它,使用三个嵌套的for循环,但我正在寻找更优化的方法。
int[] A = new int[]{10,-10,15,-12};
int[] B = new int[]{10,-12,13,-12};
int[] C = new int[]{-11,-10,9,-
我的C程序在PuTTY中编译并运行良好,直到第二次重复循环为止。一个拥有相同代码的朋友似乎能够让他的程序正常工作,我甚至尝试将我的代码和他的代码之间的任何差异更改为他的代码,而且仍然没有雪茄。下面列出的是代码和执行代码时发生的情况的示例。我相信问题在malloc声明中。
#include<stdlib.h>
#include<stdio.h>
void getInts(int ** integersArray, int * numInput);
int main() {
int * integersArray;
int numInput;
int i