Làm cách nào để chuyển dữ liệu từ C# sang JavaScript?

Tôi muốn gửi một hashmap trống từ java đến C. Sau đó, tôi cần lưu trữ dữ liệu từ C sang hashmap và chuyển lại cho java. Bây giờ tôi có thể truy cập các chức năng java của mình từ C. Nhưng, bây giờ tôi muốn chuyển một hashmap từ java và lưu trữ dữ liệu và chuyển hashmap trở lại java. Làm thế nào tôi có thể đạt được điều này?

Tôi cần chuyển hashmap ở đó [đã đề cập ở trên] và lưu trữ dữ liệu từ C và chuyển lại cho java. Làm thế nào tôi có thể đạt được điều này?

Những gì tôi đã thử

Tôi đã thử truyền dữ liệu dưới dạng mảng. Nhưng, tôi cần chuyển nó dưới dạng hashmap Java ngay bây giờ

Bạn phải bắt đầu lại từ phía bên kia. Bạn cần tạo một thư viện C với một phương thức có thể chấp nhận một mảng đơn giản từ Java. Sau đó, mã C có thể điền vào dữ liệu được yêu cầu trước khi quay lại Java. Tài liệu JNI cho biết cách thực hiện

Thêm giải pháp của bạn ở đây

 B   I   U   S  small BIG code var     &  link [^] encode untab case indent outdent

Xem trước 0

thành viên hiện tại

hoặc tham gia với chúng tôi

Tải xuống, Bình chọn, Nhận xét, Xuất bản

Email của bạn

Email này đang được sử dụng. Bạn có cần mật khẩu của bạn?

Mật khẩu tùy chọn

Khi trả lời câu hỏi, vui lòng.

  1. Đọc kỹ câu hỏi.
  2. Hiểu rằng tiếng Anh không phải là ngôn ngữ đầu tiên của mọi người, vì vậy hãy khoan dung với lỗi chính tả và ngữ pháp
  3. Nếu một câu hỏi được diễn đạt kém thì hãy yêu cầu làm rõ, bỏ qua nó hoặc chỉnh sửa câu hỏi và khắc phục sự cố. Xúc phạm không được chào đón
  4. Đừng bảo ai đó đọc hướng dẫn. Rất có thể họ có và không nhận được. Đưa ra câu trả lời hoặc chuyển sang câu hỏi tiếp theo
Let's work to help developers, not make them feel stupid.


Nội dung này, cùng với bất kỳ tệp và mã nguồn liên quan nào, được cấp phép theo Giấy phép Mở Dự án Code [CPOL]

Trong cuộc gọi theo tham chiếu, địa chỉ của các đối số được truyền vào hàm được sao chép vào các tham số chính thức. Nhớ lại rằng đối số là danh sách các tham số chúng ta sử dụng khi gọi hàm. Tham số hình thức là danh sách tham số mà hàm nhận được sau khi được gọi. Khi địa chỉ của các đối số được sao chép vào tham số chính thức, mọi thay đổi được thực hiện trực tiếp trong địa chỉ sẽ được phản ánh trở lại các đối số thực tế làm thay đổi giá trị ban đầu của các đối số. Để truyền một giá trị bằng cách gọi theo tham chiếu, địa chỉ của các đối số được truyền vào các tham số chính thức. Sau đó, nó được chấp nhận bên trong thân hàm bên trong danh sách tham số bằng cách sử dụng các biến đặc biệt được gọi là con trỏ. Các biến này là các biến đặc biệt dùng để lưu địa chỉ của một biến khác trong C. Hãy thảo luận về điều này với một số ví dụ

Định nghĩa và khai báo hàm lưu trữ địa chỉ

Để định nghĩa một hàm chấp nhận địa chỉ của một biến khác, cần sử dụng các biến đặc biệt gọi là con trỏ trong khai báo và định nghĩa hàm

khai báo hàm. tên hàm kiểu trả về[kiểu dữ liệu *con trỏ1, kiểu dữ liệu *con trỏ2];

định nghĩa hàm. kiểu trả về tên hàm[kiểu dữ liệu *con trỏ1, kiểu dữ liệu *con trỏ2] { /* thân hàm */ }

Ví dụ

Hãy xem xét một tình huống trong đó các giá trị của hai biến cần được hoán đổi. Định nghĩa hàm trong trường hợp đó sẽ giống như thế này

/* function definition to swap the values */
void swap[int *x, int *y] {
  int temp;
 temp = *x; /* save the value at address x */
 *x = *y; /* put y into x */
 *y = temp; /* put temp into y */
 return;
}

Giả sử a và b là các biến được hoán đổi, lệnh gọi hàm tương ứng sẽ giống như thế này

swap[&a,&b];

Hàm trên thực hiện như sau

1. Địa chỉ của a và b được truyền dưới dạng đối số bằng toán tử tham chiếu [&]

Một toán tử tham chiếu cung cấp địa chỉ của một biến

2. Giá trị, từ địa chỉ, được lấy bằng toán tử dereference [*]

3. Biến temp được gán với giá trị của x

4. Giá trị của y được gán cho x. Xin lưu ý tại thời điểm này, địa chỉ vẫn đang trỏ đến địa chỉ ban đầu của một

5. y được gán cho x. Tại thời điểm này, y vẫn trỏ đến địa chỉ ban đầu của b

Đây là mã đầy đủ cho lời giải thích trên

#include 
/* function declaration */
void swap[int *x, int *y];
int main [] {
/* local variable definition */
 int a = 100;
 int b = 200;
 printf["Before swap, value of a : %d\n", a ];
 printf["Before swap, value of b : %d\n", b ];
 /* calling a function to swap the values.
 * &a indicates pointer to a ie. address of variable a and  * &b indicates pointer to b ie. address of variable b
 */
 swap[&a, &b];
 printf["After swap, value of a : %d\n", a ];
 printf["After swap, value of b : %d\n", b ];
 return 0;
}
/* function definition to swap the values */
void swap[int *x, int *y] { 
 int temp;
 temp = *x; /* save the value at address x */
 *x = *y; /* put y into x */
 *y = temp; /* put temp into y */
 return;
}

Đầu ra - Gọi theo tham chiếu


Trước khi hoán đổi, giá trị của a. 100
Trước khi hoán đổi, giá trị của b. 200
Sau khi hoán đổi, giá trị của một. 200
Sau khi hoán đổi, giá trị của b. 100

Sự khác biệt từ Gọi theo Giá trị

Sự khác biệt chính giữa gọi theo giá trị và gọi theo tham chiếu là trong gọi theo giá trị không có tác dụng đối với các đối số thực tế. Trong ví dụ trên nếu bạn để ý thì các biến sẽ được hoán đổi cho nhau. Điều này sẽ không xảy ra trong trường hợp gọi theo giá trị vì chúng tôi không chuyển địa chỉ của các đối số thực tế. Chúng tôi chỉ chuyển các đối số sau đó được sao chép vào các tham số chính thức và được sử dụng trong thân hàm

Tom tăt bai học

Trong bài học này, chúng ta đã thảo luận về gọi theo tham chiếu trong ngôn ngữ lập trình C. Gọi theo tham chiếu sử dụng toán tử tham chiếu trong khi gọi hàm để truyền đối số cho hàm. Trong khi sử dụng các đối số bên trong hàm, nó sử dụng các con trỏ hoặc chúng ta cũng có thể nói rằng nó truy cập các địa chỉ biến bằng cách sử dụng toán tử tham chiếu. Cơ chế gọi theo tham chiếu cho phép thực hiện các thay đổi trong các đối số thực tế khi nó thực hiện các thay đổi trong nội dung của địa chỉ của các đối số. Qua đó, cũng thay đổi giá trị của các đối số

Để mở khóa bài học này, bạn phải là Người học. comThành viên.
Tạo tài khoản của bạn

Đăng ký để xem bài học này

Bạn là học sinh hay giáo viên?

tôi là học sinh tôi là giáo viên

Mở khóa giáo dục của bạn

Tự mình khám phá lý do tại sao 30 triệu người sử dụng Study. com

Trở thành một nghiên cứu. thành viên com và bắt đầu học ngay bây giờTrở thành thành viên

Đã là thành viên hay chưa?

Trở lại

Tài nguyên do giáo viên tạo ra cho giáo viên

Hơn 30.000 bài học video & tài nguyên giảng dạy‐tất cả ở một nơi.

bài học video

Câu đố và Bảng tính

Tích hợp lớp học

kế hoạch bài học

Tôi chắc chắn sẽ giới thiệu Study. com đến các đồng nghiệp của tôi. Nó giống như một giáo viên vung cây đũa thần và làm việc cho tôi. Tôi cảm thấy như đó là một cứu cánh

C có vượt qua giá trị không?

Có 2 cách truyền tham số trong C. Truyền theo giá trị , Truyền theo tham chiếu.

Phương pháp nào được sử dụng để truyền dữ liệu?

Bạn có thể chọn trong số ba cách truyền dữ liệu giữa các chương trình. THEO THAM KHẢO , THEO NỘI DUNG hoặc THEO GIÁ TRỊ .

Truyền giá trị trong lập trình C là gì?

Khi bạn sử dụng truyền theo giá trị, trình biên dịch sẽ sao chép giá trị của một đối số trong hàm gọi sang một tham số không phải con trỏ hoặc không tham chiếu tương ứng trong định nghĩa hàm được gọi. Tham số trong hàm được gọi được khởi tạo với giá trị của đối số đã truyền

Cách gọi theo tham chiếu trong C?

Gọi theo tham chiếu Ví dụ. Hoán đổi giá trị của hai biến .
#include .
trao đổi khoảng trống [int *, int *];
int chính []
int a = 10;
int b = 20;
printf["Trước khi đổi giá trị trong main a = %d, b = %d\n",a,b];
trao đổi [&a,&b];

Chủ Đề